Забыли пароль?
Запросите новый здесь.

Автор темы: grungestranger
ID темы: 2316
Информация:
Тема содержит 1 сообщения, была просмотрена 1163 раз.
Просмотр темы
PHP-Fusion Russia » Веб-разработка » MySQL
 Распечатать тему
Зад. по MySQL - Непонятное поведение XOR в ON у JOIN
grungestranger
Таблица t1
a b
1 2

Таблица t2
c d
2 3

Таблица t3
e
3

Запрос
select * from t1
left join t2 on c = b
left join t3 on e = d or e = a

Выводит
a b c d e
1 2 2 3 3

Запрос
select * from t1
left join t2 on c = b
left join t3 on e = d xor e = a

Выводит
a b c d e
1 2 2 3 3

-------------------------------

Таблица t1
a b
1 2

Таблица t2
c d
3 3

Таблица t3
e
1

Запрос
select * from t1
left join t2 on c = b
left join t3 on e = d or e = a

Выводит
a b c----- d----- e
1 2 NULL NULL 1

Запрос
select * from t1
left join t2 on c = b
left join t3 on e = d xor e = a

Выводит
a b c----- d----- e
1 2 NULL NULL NULL

Вопрос - почему в последнем случае в поле 'e' выводит NULL а не 1. Ведь условие должно выполняться: e = d xor e = a => 1 = NULL xor 1 = 1 ?

Объединено 07.10.2014 11:29:
Ни у кого нет мыслей?))
Изменил(а) grungestranger, 07.10.2014 11:29
 
Web

Поделиться этой темой
Социальные закладки: Vkontakte Odnoklassniki Mail.ru Facebook Google Tweet This
URL:
BBcode:
HTML:

Перейти на форум:
Похожие темы
Топ 5 пользователей форума
Alex Alex (1,208)   Zaxap Zaxap (1,089)   Vova Vova (877)   Pisatel Pisatel (678)   util util (666)