SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 31.08.2010 17:06:18

vanushka05
Участник
Зарегистрирован: 31.08.2010
Сообщений: 1

Правильная выборка данных

Здравствуйте.

Есть две таблицы:
1. content
2. relations

Поля в первой таблице : id, title
Поля во второй таблице: item_id, value

Нужно выбрать все записи и их value. Т.е. я пишу запрос:


SELECT content.id, content.title, relations.value FROM content,relations  WHERE 1 GROUP BY content.id
 

В результате мне выдаются все записи, НО у тех записей, которых нет в таблице relations, всё равное есть значение value (оно равняется значению записи, у которой это поле сещуствует )

Чтобы было понятно:

значения первой таблицы: id=1 title=Материал1 ; id=2 title=Материал2; id=3 title=Материал3
значения второй таблицы: item_id=1 value=1010101

В результате выполнения запроса получается:
id=1     title=Материал1     value=1010101
id=2     title=Материал2     value=1010101
id=3     title=Материал3     value=1010101

Хотя во второй таблице существует запись только для item_id=3
Как правильно написать запрос, чтобы value возвращался только у тех, у кого он есть во второй таблице( а у других был бы пустым)?

Неактивен

 

#2 31.08.2010 20:20:07

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Правильная выборка данных

FROM content LEFT JOIN relations ON content.id = relations.item_id

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson