Как лучше сделать выборку из двух таблиц

Demiurg

Guest
Что то ты путаешь. Как ты выполняешь запрос и смотришь его результаты ?
 

chira

Новичок
ns
не компосируй мозги нам
Код:
mysql> select count(null);
+-------------+
| count(null) |
+-------------+
|           0 |
+-------------+
1 row in set (0.09 sec)
откуда у тебя count возвращает NULL?
 

mmaaxx

Guest
все поля из производителя выводяться нормально, а вот все что касаеться таблицы товара, везде либо NULL либо 0
Приведи пример данных, которые у тебя в таблицах.
А лучше книжку умную, или хотя бы док по MySLQ, раздел по JOIN почитай. http://www.mysql.com/doc/ru/JOIN.html
 

chira

Новичок
Автор оригинала: ns
Не обьяните почему если сделать вот такой запрос, то все поля tovar.*
равны NULL?

SELECT brend.*,tovar.*
FROM BREND
LEFT JOIN tovar ON tovar.brend_id = brend.id
GROUP BY brend.id

Получаеться что, чего я хочу можно будет сделать только в 4.1
с вложенным запросом?
Можно спросить , какой ты вкладываешь смысл в "GROUP BY brend.id" для своего SQL?
 

Falc

Новичок
Demiurg
>>и я не понимаю, почему это работает только в mysql.
В большенстве полей обычно надо групировать по всем полям, которые выводшь.
 

Demiurg

Guest
>В большенстве полей обычно надо групировать по всем полям, которые выводшь.
а если групирока идет по первичному ключу ?
 

ns

Guest
Все разобрался с JOIN'ом , все работает

у меня в таблицах было еще по полю и в запросе я забыл его упомянуть, из-за чего и была ерунда

всем спасибо за советы...

to demiurg

Для запросов и работы с MySQL я использую EMS Query и EMS Manager ( trial :(( ) так как ничего более удобного под win нет

А на счет дока JOIN.html то именно этот раздел сделан ужасно
.....

Еще раз спасибо за полезный инструмент JOIN
 

Falc

Новичок
ns
>>А на счет дока JOIN.html то именно этот раздел сделан ужасно

Там все ясно написано.

Demiurg
>>а если групирока идет по первичному ключу?
Покрайней мере в интербейсе так. И по стандарту вроде тоже так.
 

KES

Guest
Автор оригинала: ns
Не обьяните почему если сделать вот такой запрос, то все поля tovar.*
равны NULL?

SELECT brend.*,tovar.*
FROM BREND
LEFT JOIN tovar ON tovar.brend_id = brend.id
GROUP BY brend.id

Получаеться что, чего я хочу можно будет сделать только в 4.1
с вложенным запросом?
Может потому что поле brend_id имеет значение NULL
Или не в одном товаре нет поля brend_id со значением равным id с таблицы brend
 
Сверху