|
|
|
Мистика SQL запроса
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Почему не может выбрать значение? Таблицы одинаковые. Колонки guid отличаются только тем, что t1 она unsigned и никаким образом это на результат влиять не должно. Или я слишком утомился, или пора начинать верить в компьютерных привидений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2014, 22:15:10 |
|
||
|
Мистика SQL запроса
|
|||
|---|---|---|---|
|
#18+
Не удается воспроизвести. Покажите точный DDL таблиц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2014, 22:33:47 |
|
||
|
Мистика SQL запроса
|
|||
|---|---|---|---|
|
#18+
Vladimit04Почему не может выбрать значение? Таблицы одинаковые. Колонки guid отличаются только тем, что t1 она unsigned и никаким образом это на результат влиять не должно. Или я слишком утомился, или пора начинать верить в компьютерных привидений.Потому что (select guid from t2) возвращает NULL А конструкция where a in (b,c,d) эквивалентна where a=b OR a=c OR a=d Ну а сравнение с NULL общий результат всегда превращает в NULL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 09:08:44 |
|
||
|
Мистика SQL запроса
|
|||
|---|---|---|---|
|
#18+
Точно так же where a not in (b,c,d) => where not(a=b or a=c or a=d) => (b is null) => NULL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 09:10:18 |
|
||
|
Мистика SQL запроса
|
|||
|---|---|---|---|
|
#18+
Cygapb-007, Небольшая поправочка... Вот как раз упомянутый тобой IN - "нечувствителен" к NULL-ам, Так как NULL or TRUE - все же TRUE. В отличии от NOT IN , который у автора и имеет место быть. ;) Он раскрывается в гирлянду неравенств через AND. И тут уже работает то, о чем ты сказал: (TRUE and NULL) = NULL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 09:15:51 |
|
||
|
Мистика SQL запроса
|
|||
|---|---|---|---|
|
#18+
Cygapb-007, и ещё - EMPTY SET и NULL - это две большие разницы. И если NOT IN-подзапрос возвращает EMPTY SET, то запрос из основной таблицы с участием предиката NOT IN (empty set) возвращает все строки из основной таблицы... Как пример иллюстрации всех трех ситуаций... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 09:33:41 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=38577419&tid=1835151]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
47ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 229ms |
| total: | 345ms |

| 0 / 0 |
