Форум: "Базы";
Текущий архив: 2004.02.02;
Скачать: [xml.tar.bz2];
ВнизМожно ли сделать такую выборку одним SQL-запросом? Найти похожие ветки
← →
sergg (2004-01-08 10:37) [0]Уважаемые мастера, подскажите пожалуйста, можно ли сделать следующую выборку одним SQL-запросом:
1) Есть таблица 1 содержащая типы объектов - скажет тип "А" и тип "Б", состоящая из собственно названия типа (А и Б) и счетчика (индексного поля ?? :-) )
2)Есть таблица 2 самих объектов, где в поле "тип объекта" указывается номер записи из таблицы 1 :-)
3)И есть таблица 3 событий, происходивших с объектами, где в поле "Объект" тоже указывается номер записи (ну в смысле значения индесного поля типа счетчик) из таблицы 2.
Как можно сделать выборку всех событий, происходивших с объектами типа А?
В книжке по SQL ничего похожего я не нашел :(
← →
DCoder (2004-01-08 11:08) [1]
select table3.events
from table3
inner join table1 on table1.object_index=table3.object_index
where table1.object_name="A" /*можно использовать параметр*/
где events - события
Вторая таблица, как я понял, тут вообще не используется
← →
sergg (2004-01-08 13:52) [2]Почему?? Используется:
В записях табл 3 указываются идентификаторы из табл 2 (объекты)
а в записях табл 2, в свою очередь, указываются идентификаторы из табл 1 (типы объектов)
← →
DCoder (2004-01-08 16:14) [3]select table3.id, table3.events
from table3
inner join table2 on table2.id=table3.id_t2
inner join table1 on table1.id=table2.id_t1
where table1.object_name="A"
← →
sergg (2004-01-08 16:50) [4]Спасибо. Сейчас почитаем что ето за джойн такой :)))
← →
div (2004-01-08 19:15) [5]какие join"ы?
select * from table3
where
table1.objecy_name = "A" and
table2.id_t1 = table1.id and
table3.id_t2 = table2.id_t1
← →
sergg (2004-01-08 22:17) [6]Хмм, join"ы работают, спасибо DCoder, а этим путем разве лучше?
← →
sergg (2004-01-08 22:34) [7]При попытке включить в запрос
ссылку на другую таблицу, например
table2.id_t1 выдается ошибка:
Invalid field name
id_t1
:((
← →
sergg (2004-01-08 23:17) [8]Должно быть так :)
select * from table3,table2,table1
where
table1.objecy_name = "A" and
table2.id_t1 = table1.id and
table3.id_t2 = table2.id_t1
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.02.02;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.009 c