Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Выборка из объединенных таблиц
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » Выборка из объединенных таблиц

Страниц (1): [1]
 

1. Tatyanko_O - 02 Марта, 2012 - 14:11:55 - перейти к сообщению
Здравствуйте!
Столкнулась с проблемой при построении запросов, очень надеюсь на ваши советы.
Таблица tbl1:
dateid|classid
Имеет записи:
1c 5y
2p 6y
5w 6y
3g 7y
Таблица tbl2:
dateid|classid|result
Имеет записи
1с 5y zapis1
2p 6y zapis2
5w 6y zapis3

Запросом:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT * FROM `tbl1` j LEFT JOIN tbl2 d ON j.dateid = d.dateid

Получаем:
1c 5y zapis1
2p 6y zapis2
5w 6y zapis3
3g 7y NULL

Вот, если я хочу получить как раз эти строки, где значение 'result' NULL, то при запросе:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT * FROM `tbl1` j LEFT JOIN tbl2 d ON j.dateid = d.dateid WHERE d.result='NULL'

выдает пустой результат, что найдено 0 строк....
Мне просто выводить надо определенный classid, а для его dateid может существовать запись в tbl 2, а может и нет... В чем ошибка?
2. Panoptik - 02 Марта, 2012 - 14:15:56 - перейти к сообщению
CODE (SQL):
скопировать код в буфер обмена
  1.     SELECT * FROM `tbl1` j LEFT JOIN tbl2 d ON j.dateid = d.dateid WHERE d.result IS NULL
3. Tatyanko_O - 03 Марта, 2012 - 07:28:10 - перейти к сообщению
Panoptik пишет:
CODE (SQL):
скопировать код в буфер обмена
  1.     SELECT * FROM `tbl1` j LEFT JOIN tbl2 d ON j.dateid = d.dateid WHERE d.result IS NULL


Смущение Спасибо большое! Улыбка
4. snikers987 - 03 Марта, 2012 - 13:48:22 - перейти к сообщению
Tatyanko_O 'NULL' !== NULL

 

Powered by ExBB FM 1.0 RC1