Forum Webscript.Ru

Общие => Базы данных => Тема начата: Jean от 23 Июля 2004, 12:42:43

Название: помогите с запросом
Отправлено: Jean от 23 Июля 2004, 12:42:43
пусть есть таблица
create table object
(
id int,
name text,
parentid int,
foreign key (parentid) references object (id)
)

чтобы получить данные об объектах
я могу например послат такой запрос:

select id, name
from object

так вот мне нужно за один запрос получить не только информацию об объекте, но и о его родителе.
возможно ли такое?

например
(1, object1, null)
(2, object2, null)
(3, object3, 1)
(4, object4, 3)


то есть в данном случае у 1 и 2 нету родителей, а у 3 родитель - 1, у 4 родитель 3.

в общем в итоге я должен получить
подобный контейнер:
(object_name, parentobject_name)

спасибо.
Название: помогите с запросом
Отправлено: Forza от 23 Июля 2004, 13:16:01
Т.е. ты хочешь получить в одной строке имя объекта и его родителя? Безродительных объектов тоже выводить? Тогда SELECT o1.name, o2.name FROM object AS o1 LEFT JOIN object AS o2 ON o1.parentid=o2.id (инфа на http://www.mysql.ru/docs/man/JOIN.html).
Название: помогите с запросом
Отправлено: Макс от 23 Июля 2004, 13:20:35
Jean
на будущее.
Мир СУБД на mysql не заканчивается. Указывай, пожалуйста, используемую СУБД.
Название: помогите с запросом
Отправлено: Jean от 23 Июля 2004, 13:24:11
Forza

большое спасибо, работает


Макс
так и поступлю