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

Вниз

SQL запрос: поиск двойников   Найти похожие ветки 

 
Deedlit ©   (2003-04-27 13:46) [0]

Привет всем. :)

Вопрос... есть локальная БД медицинского учреждения, хранящая список пациентов, за, скажем, последний год. Нужно отфильтровать людей, имеющих одинаковые имена, даты рождения и пол. Кто-нибудь пытался это сделать без помощи тупого перебора? Оператор ведь уснет... :( С другой стороны, я никак не могу составить SQL запрос.


 
Тих   (2003-04-27 15:03) [1]

select distinct name, sec_name, last_name, sex from [table_name]?


 
DrPass ©   (2003-04-27 16:40) [2]

В два шага: во-первых,
select name, sec_name, last_name, sex, count(*) as cnt from [table_name] group by name, sec_name, last_name, sex
во-вторых, выбираешь только те, где cnt>1


 
АлексейК   (2003-04-28 04:31) [3]

select name, sec_name, last_name, sex from [table_name]
group by name, sec_name, last_name, sex, count(name) as cnt
having count(name)>1
Таким образом можно вывести всех двойников, тройников и т.д., группируя по нескольким полям или по одному.


 
Anatoly Podgoretsky ©   (2003-04-28 11:19) [4]

DrPass © (27.04.03 16:40)
Зачем в два шага? Вот в один АлексейК (28.04.03 04:31) и соответствует SQL89 не говоря уже про SQL92


 
GLUKAS ©   (2003-04-28 14:15) [5]

Select name, sec_name, last_name, sex
from table1 t
where (select count(*) from table1 where name=t.name and sec_name=t.secname and last_name=t.lastname and sex=t.sex)>1;


Во че на вскидку получилось..... 8)



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
14-59904
anton_cor
2003-04-29 20:33
2003.05.19
ExpressQuantumGrid Suite v4 - Master-Detail


14-59929
Тумар
2003-04-27 18:35
2003.05.19
Что вы знаете о своей фамилии???


1-59773
Arkady
2003-05-06 11:08
2003.05.19
TOpenDialog


1-59717
Вадим
2003-05-04 23:21
2003.05.19
Настройка панели инструментов


14-59894
Vlad Oshin
2003-04-29 10:23
2003.05.19
Кто такие ителлегенты?