Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2007, 12:40 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Вот так надо:t1.afn1(a).bfn1(a).c1112483927 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2007, 13:04 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2007, 13:55 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2007, 14:34 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
если с псевдонимом получим другую ошибку Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2007, 14:57 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
точно, не работает, можно так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2007, 15:20 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
спасибо, а можно по другому? слишком много селектов, а таблицы и функции не такие маленькие как тесте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2007, 15:30 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
1. Если логика функции не зависит от остальных данных базы, то лутше перенести алгоритм функции на клиент. 2. Если вычислене полей a и b независимы, то имеет смысл разделить функцию на две каждая возвращает a и b соответсивенно. Можно будет писать select fn1(t1.a)) as a, fn1(t1.a)) as b from t1 так как select t1.a, (select b from fn1(t1.a)) as b, (select c from fn1(t1.a)) as c from t1 удваивает расчеты 3. Есть смысл в функции возвращать расчетные поля + поля таблици select a, b, c ... from fn1 as .... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2007, 15:59 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Опечатка, я имел в виду fn1(t1.a) as a, fn2(t1.a) as b from t1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2007, 16:05 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
v0v4ik1. Если логика функции не зависит от остальных данных базы, то лутше перенести алгоритм функции на клиентзависит v0v4ik2. Если вычислене полей a и b независимы, то имеет смысл разделить функцию на две каждая возвращает a и b соответсивеннозависимы, сейчас выходных параметоров 8, будет больше v0v4ik3. Есть смысл в функции возвращать расчетные поля + поля таблицинет. эта функция выводит общую информацию о каждой записи(формируется из нескольких таблиц), которая также формируется из кучи связанных таблиц. раньше на клиенте было много гридов, в которых разобраться стало проблематично. пэйжконтролы и другие контролы не спасают, да и место на формах уже нету. дизайнер из меня никакой, а юзер хочет видеть все и сразу(не обсуждается). этот запрос экономит половину формы. надо думать над индексами ибо сейчас запрос с кучей селектов выполняется от 20 сек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2007, 16:59 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
непонимайу v0v4ik3. Есть смысл в функции возвращать расчетные поля + поля таблицинет. эта функция выводит общую информацию о каждой записи(формируется из нескольких таблиц), которая также формируется из кучи связанных таблиц. раньше на клиенте было много гридов, в которых разобраться стало проблематично. пэйжконтролы и другие контролы не спасают, да и место на формах уже нету. дизайнер из меня никакой, а юзер хочет видеть все и сразу(не обсуждается). этот запрос экономит половину формы. надо думать над индексами ибо сейчас запрос с кучей селектов выполняется от 20 сек. Вот именно. Если вы вызываете на каждый столбец одну и ту же функцию, то вычисляете одно и тоже n раз! Джоинить функцию тоже не стоит - индекс по ней не построится нормально в вашем случае. Каждий селект - вызов функции для всех записей. Помоему вариант 3 - это как раз ваш случай. Это будет самый быстрый и удобный вариант(если правильно написать). Что вас в нем конкретно не устраивает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2007, 19:06 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
v0v4ik Если вы вызываете на каждый столбец одну и ту же функцию, то вычисляете одно и тоже n раз!нет. на запись. v0v4ik Что вас в нем конкретно не устраивает?может быть не правильно понял. чем отличается "select(view)+function(много селектов)" от "function(select(view)+много селектов)"? кстати были бы индексы на вью... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2007, 20:03 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Если вы напишете типа Код: plaintext 1. 2. 3. 4. Это вы имеете в выду под "select(view)+function(много селектов)"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2007, 20:17 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
v0v4ikЭто вы имеете в выду под "select(view)+function(много селектов)"?да. ясно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2007, 06:49 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
v0v4ikЕсли вы напишете типа Код: plaintext 1. 2. 3. 4. это не очевидно: авторA STABLE function cannot modify the database and is guaranteed to return the same results given the same arguments for all rows within a single statement. This category allows the optimizer to optimize multiple calls of the function to a single call. In particular, it is safe to use an expression containing such a function in an index scan condition. (Since an index scan will evaluate the comparison value only once, not once at each row, it is not valid to use a VOLATILE function in an index scan condition.) ,но, естественно, все надо тестировать на живых примерах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2007, 10:27 |
|
||
|
помогите с запросом
|
|||
|---|---|---|---|
|
#18+
есть такой грязный хак: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Код: plaintext 1. 2. 3. 4. 5. В версии 8.3 обещают volatile функции вычислять один раз. Поживем, увидем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2007, 10:40 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=34729180&tid=2004338]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
30ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 218ms |
| total: | 326ms |

| 0 / 0 |
