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

Вниз

Как сделать выборку по главной таблице   Найти похожие ветки 

 
}|{yk ©   (2005-01-26 12:42) [0]

и выбрать, есть ли зависимые элементы в подчиненной? На чистом SQL, без процедурных расширений.


 
Johnmen ©   (2005-01-26 12:46) [1]

Хм... LEFT JOIN что ли ?


 
stud ©   (2005-01-26 13:05) [2]

может
select main.* from main where main.id in (select detail.id from detail where...)? либо 1


 
Sergey13 ©   (2005-01-26 13:13) [3]

Те, у которых есть
select main.* from main
where exists (select * from detail where main.id=detal.m_id)

Те, у которых нет
select main.* from main
where not exists (select * from detail where main.id=detal.m_id)


 
Val (from Donetsk)   (2005-01-26 16:38) [4]

>Johnmen ©   (26.01.05 12:46) [1]
не всякий Oracle возьмет :)
>Sergey13 ©   (26.01.05 13:13) [3]  
судя по вопросу, все же внешнее объединение нужно, как сказал Johnmen ©   (26.01.05 12:46), ведь он выбирает, не "если", а "есть ли" ;)


 
Sergey13 ©   (2005-01-26 16:44) [5]

select main.*,count(detal.*)
from main,detail where main.id=detal.m_id
Groub By main.*

Выделенное ессно заменить на список полей


 
msguns ©   (2005-01-26 17:09) [6]

Select * from main
  where id in
    (Select distinct mid from detal)

mid - указатель на мастер в детале.


 
}|{yk ©   (2005-01-26 17:39) [7]

SELECT   plat_id, COUNT (bank_id) count_detail_temp
                   FROM (SELECT app_plateg.plat_id, app_bank_temp.rowid bank_id
                           FROM app_plateg, app_bank_temp
                          WHERE app_plateg.plat_id = app_bank_temp.plat_id(+))
               GROUP BY plat_id


 
Johnmen ©   (2005-01-26 17:47) [8]

>}|{yk ©   (26.01.05 17:39) [7]

Тихо сам с собою ?
:)


 
msguns ©   (2005-01-26 18:07) [9]

>}|{yk ©   (26.01.05 17:39) [7]

Ну и ?.. Каким образом это решает сабж ? Или подразумевается этот запрос юзать как вложенный для внешнего запроса, где анализируется это поле с кошмарным именем count_detail_temp ?

ИМХО, [6] существенно скромнее ;)



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

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

Наверх




Память: 0.48 MB
Время: 0.038 c
1-1108412128
Jeson
2005-02-14 23:15
2005.02.27
Помощь с созданием собственного расширения для проги


1-1108124224
Геннадий
2005-02-11 15:17
2005.02.27
Как нажать кнопку?


3-1106937860
Eraser
2005-01-28 21:44
2005.02.27
Какоу базу данных выбрать?


1-1108131963
Knoxville
2005-02-11 17:26
2005.02.27
Как рисовать на канве рисунки из bmp?


14-1107368351
Луарвик
2005-02-02 21:19
2005.02.27
Вышел трейлер фильма BloodRayne