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

Вниз

Помогите с запросом. Поля и совокупные х-ки в одном запросе ...   Найти похожие ветки 

 
s_t_d   (2009-12-16 17:11) [0]

Уважаемые мастера, пожалуйста подскажите направление поиска.
Есть 2 таблицы:
patients(patid, lastname) - табл. пациентов;
labres(id, patid, date1, val1) - табл. анализов.
Как сформировать запрос к двум таблицам, который формирует фамилии пац. и соответствующие им анализы ясно, например так:
select patients.patid, patients.lastname, labres.val1
from patients
inner join labres on (patients.patid = labres.patid)
where (
     labres.date1 > "01.01.2008"
     and labres.val1 > 0
      ).
А вот как сформировать, запрос, результатом которого будут также
patients.patid, patients.lastname и количество записей во второй таблице, удовлетворяющее тем же критериям не ясно...
Прочитал про GROUP BY, но как воспользоваться в случае двух таблиц? И вообще туда-ли двигаюсь?
СУБД - FB-1.5.
Заранее благодарю.


 
Nucer   (2009-12-16 19:18) [1]

Не уверен (не знаю что такое FB-1.5), но скорее всего так:
SELECT patients.patid, patients.lastname, COUNT(*)
FROM patients LEFT JOIN labres ON patients.patid = labres.patid
WHERE labres.date1 > "01.01.2008" AND labres.val1 > 0
GROUP BY patients.patid


Может быть, что и так:
SELECT P.patid, P.lastname, COUNT(*) AS cnt
FROM patients P LEFT JOIN labres L ON P.patid = L.patid
WHERE L.date1 > "01.01.2008" AND L.val1 > 0
GROUP BY P.patid ORDER BY cnt DESC


 
Сергей М. ©   (2009-12-16 19:42) [2]


> совокупные х-ки


Стесняюсь спросить - а это что ?
Про это можно говорить  при дамах ?


 
s_t_d   (2009-12-17 00:07) [3]

>Nucer
Спасибо за внимание.
1)FB-1.5  - Firebird 1.5
2)Предложенные вами варианты не проходят. Я понял так, что некорректное использование GROUP BY

>Сергей М. ©   (16.12.09 19:42) [2]
Извините, если невольно оскорбил ваш слух, но я не увидел в этом словосочетании чего-либо предосудительного... По базовому образованию далек от IT области, но иногда приходится сочинять простейшие запросы, поэтому и обратился в разде "Начинающим".
Осваивал по книге (нашел на полке у наших спецов, коих не допросишься) "Все о DELPHI. Язык SQL в Delphi5. А.Я. Архангельский. Глава 2. Основы языка SQL. Параграф 2.2.2. Совокупные характеристики, где речь и идет о понятиях count, min, max, ...". Так что по этому вопросу скорее к автору книги.

А вот как все-таки составить такой запрос ?


 
Сергей М. ©   (2009-12-17 00:10) [4]


> Все о DELPHI. Язык SQL в Delphi5. А.Я. Архангельский


Понятно.
Дальше можно не конкретизировать)


 
s_t_d   (2009-12-17 00:16) [5]

>Сергей М. ©   (17.12.09 00:10) [4]
А что понятно-то?
Если можете помочь - подскажите, где прочесть, а вещать полунамеками не к чему...


 
Сергей М. ©   (2009-12-17 00:30) [6]


> что понятно-то?


Скажу прямо - г-н Архангельский и его "творчество" здесь (и не только здесь), мягко говоря, не в почете. И есть за что.


 
s_t_d   (2009-12-17 00:35) [7]

>Сергей М. ©   (17.12.09 00:30) [6]
Если можете, пожалуйста подскажите, где прочесть...


 
Sergey13 ©   (2009-12-17 10:40) [8]

> [3] s_t_d   (17.12.09 00:07)
> 2)Предложенные вами варианты не проходят. Я понял так, что
> некорректное использование GROUP BY

Предпололожение не лишено основания. При группировке в Group by должны быть перечислены ВСЕ поля, перечисленные в select, кроме агрегатных.

> [7] s_t_d   (17.12.09 00:35)
> Если можете, пожалуйста подскажите, где прочесть...

В любом учебние по SQL. Можно поискать по фамилии Грубер (или Грабер).


 
s_t_d   (2009-12-17 12:34) [9]

>[8]Seegey13. Большое спасибо за конструктивную помощь.



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

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

Наверх




Память: 0.49 MB
Время: 0.013 c
15-1260031551
AntonioBanderas
2009-12-05 19:45
2010.02.14
Книги


2-1261052520
oleg1963lora
2009-12-17 15:22
2010.02.14
Помогите создать класс


15-1260141298
Kerk
2009-12-07 02:14
2010.02.14
Грамотность


15-1260203381
БарЛог
2009-12-07 19:29
2010.02.14
В Китае задержали водителя с картоном вместо лобового стекла :)


15-1260441991
oldman
2009-12-10 13:46
2010.02.14
Я вирус поймал или система глючит или я не понимаю?