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

Вниз

Sql   Найти похожие ветки 

 
gost ©   (2006-06-23 15:09) [0]

Помогите, пожалуйста, написать sql запрос. 3 таблицы:
1. RA (рекламные агентства), в ней находится поля RKod, RName.
2. VRA (виды деятельности рекламного агентства), в ней поля - VRAKod, VRAKodRA, VRAKodVD.
3. WidD (виды деятельности): WKod, WName.
Нужно получить данные по рекламным агентствам, которые занимаются несколькими видами деятельности одновременно.
Например, 1 рекламное агентство занимается и телевидением, и газетами, и радио. Нужно выбрать такое агентство.
Для определения видов деятельности, по которым нужно найти рекламные агентства, создаю таблицу Wid с полем f1, в котором хранятся коды видов деятельности, по которым выбираются рек.агентства.
Писала такой запрос: select RName from RA, VRA, WidD where RKOd=VRAKOdRA and VRAKodVD = all (select f1 from Wid) and VRAKodVD=WKod
Естественно, что такой запрос не работает.
Например, в таблице VRA записи:
VRAKod VRAKodRA VRAKodVD
1          1             1
2          1             2  
3          1             3
4          2             1
5          3             2
6          3             3
Пользователь хочет выбрать рекламные агентства, у которых вид деятельности (ВД) 1 и 2.
Он должен получить отчет - 1.
В другой раз хочет выбрать РА, у которых ВД - 2 и 3.
Получает  - 1, 3.
Как составить такой запрос?


 
ANB ©   (2006-06-23 15:22) [1]

select * from RA where RA.RKod in (select VRA.VRAKodRA from VRA where VRA.VRAKodVD in (2, 3))


 
Sergey13 ©   (2006-06-23 15:32) [2]

А зачем топики то плодить?
http://delphimaster.net/view/2-1151045283/


 
ANB ©   (2006-06-23 15:33) [3]

Не заметил, уточняю :
select * from RA where RA.RKod in (select VRA.VRAKodRA from VRA, WidD where VRA.VRAKodVD = WidD.F1)


 
gost ©   (2006-06-23 15:56) [4]

Спасибо решение уже найдено.
select ra.rname from ra, vra, widd
where ra.rkod = vra.vrakodra and vra.vrakodvd = widd.wkod and
 wkod in (select f1 from wid)
group by ra.rname
having count (vra.vrakodra) > 1



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

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

Наверх




Память: 0.48 MB
Время: 0.043 c
2-1150554637
antoxa2005
2006-06-17 18:30
2006.07.09
Missing configuration file c: Program Files Firebird Firebird_1_5


2-1150720795
AlexanderMS
2006-06-19 16:39
2006.07.09
Вопросик про шрифт


1-1148556894
Provodnick
2006-05-25 15:34
2006.07.09
Особенности компиляции локальных функций


11-1114171532
RA
2005-04-22 16:05
2006.07.09
RbControls for KOL?


2-1151117389
gamebit3000
2006-06-24 06:49
2006.07.09
Не получается связать несколько БД и сделать их поля вычисляемыми