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

Вниз

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

 
Вова   (2008-12-09 17:05) [0]

Подскажите, почему эти два запроса возвращают разные результаты (разница на 5 человек)

select famil, imja, otch  from f2 where
(select count(distinct f1.id) from f1 where f2.id=f1.f2_id and f1.isu in (1011200,1021700))=2

и
select  famil, imja, otch from f2
 inner join f1 on f2.id=f1.f2_id and f1.isu in (1011200, 1021700)

group by famil, imja, otch  having  count(f2.id)=2

(таблица f2 - личные данные, f1 - данные о покупках (isu))
В чем разница построения этих запросов?
И еще - никак не определюсь, что лучше использовать  - объединения или подзапросы? это непринципиально, или есть какие-то правило, что где лучше использовать?


 
tesseract ©   (2008-12-09 17:27) [1]

А посмотреть разницу по базе никак ? Сразу увидишь почему. join -ы проще читаються. Первый запрос  с дистинкт запущен, зачем спрашиваеться ?



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

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

Наверх




Память: 0.46 MB
Время: 0.009 c
15-1228686048
{RASkov}
2008-12-08 00:40
2009.02.01
Догадливая Win


15-1228228702
kaif
2008-12-02 17:38
2009.02.01
В Китае Минкульт намерен запретить петь под фонограмму


3-1214206318
Matveih1
2008-06-23 11:31
2009.02.01
Как из Delphi завести нового пользователя в FireBird


2-1229548091
YoungerDelphist
2008-12-18 00:08
2009.02.01
biHelp


15-1228215954
tesseract
2008-12-02 14:05
2009.02.01
Дурят нашего брата. Хотя может от студентов защищаются :