Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

Запрос   Найти похожие ветки 

 
Lamer2   (2004-04-12 16:11) [0]

Уважаемые Мастера!!!!!! Вопрос простой, есть 2 таблицы T1(id, name) и T2(id, id_T1, name), связь один ко многим, T1.id = T2.id_T1, мне надо найти все записи из таблицы T1, где встречаются записи из T2 с name равным например "sql"?


 
Lamer2   (2004-04-12 16:26) [1]

АУ


 
serge35   (2004-04-12 16:38) [2]

select * from t1, t2
where t1.id=t2.id
and t2.name="sql"


 
Lamer2   (2004-04-12 16:48) [3]

>serge35
не годится, так как если в таблице T2 есть 2 записи с полем name="sql" и у них id_T1 равный, то он выдаст 2 одинаковые строки из T1


 
sniknik ©   (2004-04-12 16:56) [4]

годится, distinct поставь только и все.


 
innok ©   (2004-04-12 16:57) [5]

используй в select"e  distinct


 
Lamer2   (2004-04-12 16:59) [6]

интересно, а этот запрос с подзапросом можно сделать?


 
serge35   (2004-04-12 17:01) [7]

А как тогда понимать это:
"мне надо найти все записи из таблицы T1, где встречаются записи из T2 с name равным например "sql"?"


 
Lamer2   (2004-04-12 17:06) [8]

ну типа этого
select * from T1 where exists (select * from T2 where name ="sql")
только этот запрос не работает, он либо все записи выдает, либо ни одной!


 
serge35   (2004-04-12 17:15) [9]

select * from t1
where t1.id in (select t2.id where t2.name="sql")
Это будет вложенный запрос, но результат будет такой же.


 
Lamer2   (2004-04-12 17:22) [10]

>serge35
я так же подумал, только
select * from t1
where t1.id in (select distinct t2.id where t2.name="sql")
а то записи повторятся будут наверное, дома проверю


 
serge35   (2004-04-12 17:34) [11]

Эти запросы идентичные, только второй по идее должен выполняться быстрее.



Страницы: 1 вся ветка

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.07 c
1-1082589588
Demi
2004-04-22 03:19
2004.04.11
Что такое SetWallpaper


6-1079081830
Jaxtor
2004-03-12 11:57
2004.04.11
Отсылка сообщения через Outlook 2000 (COM)


3-1081521924
Smile)))
2004-04-09 18:45
2004.04.11
Как в DBGRID....


3-1081362373
Swimmer
2004-04-07 22:26
2004.04.11
Какое ядро БД легче: BDE, dbExpress или ADO?


1-1082643041
hawkins
2004-04-22 18:10
2004.04.11
Подскажите, как у ListBox узнать ширину рамки?