|
|
|
Зависает запрос
|
|||
|---|---|---|---|
|
#18+
Не могу понять причину зависания запроса, т.е. сервер уходит в долгое раздумье. Дождаться не вышло результата. Первая версия была без объединения с -1, потом подумал, что сервер впадает в раздумье за-за того, что подзапрос возвращает null и решил добавить union. отдельно подзапрос выполняется за приемлемое время. Не могу понять, где подвох и как действовать Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. План подзапроса Код: plsql 1. 2. 3. 4. 5. Общий план Код: plsql 1. 2. 3. 4. 5. 6. Такое выполняется тоже Код: plsql 1. Это возвращает -1 Код: plsql 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2014, 10:17:40 |
|
||
|
Зависает запрос
|
|||
|---|---|---|---|
|
#18+
Замени: IN-подзапросы на JOIN, NOT IN - подзапросы на LEFT JOIN ANTI ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2014, 10:19:43 |
|
||
|
Зависает запрос
|
|||
|---|---|---|---|
|
#18+
прочитай про exists ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2014, 10:48:22 |
|
||
|
Зависает запрос
|
|||
|---|---|---|---|
|
#18+
сработал вот такой Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2014, 14:18:05 |
|
||
|
Зависает запрос
|
|||
|---|---|---|---|
|
#18+
Hello, frozzen! You wrote on 28 января 2014 г. 14:29:43: frozzen> сработал вот такой судорожное программирование методом научного тыка. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2014, 14:30:59 |
|
||
|
Зависает запрос
|
|||
|---|---|---|---|
|
#18+
Добрый Э - ЭхNOT IN - подзапросы на LEFT JOIN ANTI что-то новое? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 10:27:39 |
|
||
|
Зависает запрос
|
|||
|---|---|---|---|
|
#18+
Док, отнюдь, старо как мир: Код: sql 1. что, по сути, есть аналог такого: Код: sql 1. (за NULL в поле t2.f1 пока не говорю.) Сама по себе конструкция LEFT JOIN + WHERE, отсивающей нашедшие соответствие в джойне записи, и называется в народе LEFT JOIN ANTI. Так как оно по факту выбирает записи из Основной таблицы (LEFT JOIN), не нашедшие себе соответствия в левоприсоединяемой таблице (ANTI) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 11:37:01 |
|
||
|
Зависает запрос
|
|||
|---|---|---|---|
|
#18+
Добрый Э - Эх называется в народе LEFT JOIN ANTI про "народ" вы сочиняете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 11:52:43 |
|
||
|
Зависает запрос
|
|||
|---|---|---|---|
|
#18+
kdv, ну, сочиняю не я, допустим, а комитет ANSI. А знать или не знать стандарт - это уже личное дело каждого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 11:55:31 |
|
||
|
Зависает запрос
|
|||
|---|---|---|---|
|
#18+
Добрый Э - Эх, ok, значит я не в тех кругах вращаюсь. Нашел вот что http://technet.microsoft.com/ru-ru/library/ms191171(v=sql.105).aspx ну и да, ANTI JOIN действительно гуглится, но не как "стандарт ANSI", а именно как это самое определение выборки "несовпадающих" столбцов. если у вас есть доказательство, что это термин ANSI - приведите пожалуйста. p.s. про свойства такого запроса я в курсе как минимум лет 15. наиболее удобный способ найти несовпадения в битых базах у таблиц, связанных по FK. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2014, 12:29:35 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38540070&tid=1563932]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
183ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 221ms |
| total: | 478ms |

| 0 / 0 |
