Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.07.2009, 05:29   #1
FleshDro
Пользователь
 
Регистрация: 24.07.2009
Сообщений: 12
По умолчанию Помогите с SQL-запросом

Есть таблица Table1.dbf
fam - фамилия
im - имя
ot - отчество
dr - день рождения
ad - адрес
work - работа (если false, то безработный)

Нужно найти в таблице работающих людей у которых одинаковые ФИО.
В итоговой таблице структура должна быть такой же.

Последний раз редактировалось FleshDro; 24.07.2009 в 08:56.
FleshDro вне форума Ответить с цитированием
Старый 24.07.2009, 07:15   #2
GROWZER
Пользователь
 
Аватар для GROWZER
 
Регистрация: 16.06.2009
Сообщений: 47
По умолчанию

Код:
SELECT   * 
   FROM   Table1 
 WHERE   fam = "Ivanov" 
     AND   im = "Ivan" 
     AND   ot = "Ivanovich";
результат запроса таблица в которой будут только Ivanov Ivan Ivanovich...

Последний раз редактировалось Stilet; 28.07.2009 в 08:07.
GROWZER вне форума Ответить с цитированием
Старый 24.07.2009, 07:32   #3
FleshDro
Пользователь
 
Регистрация: 24.07.2009
Сообщений: 12
По умолчанию

Цитата:
Сообщение от GROWZER Посмотреть сообщение
результат запроса таблица в которой будут только Ivanov Ivan Ivanovich...
Спасибо за скорый ответ, но нужно найти в таблице работающих людей у которых одинаковые ФИО, а не именно Иванова И.И.

Код:
SELECT fam, im, ot, COUNT(fam)
FROM Table1
WHERE work=true
GROUP BY fam,im,ot HAVING COUNT(fam)>1
вот запрос который находит всех у кого одинаковые ФИО, но он не отображает поля dr, ad, work

Последний раз редактировалось Stilet; 28.07.2009 в 08:09.
FleshDro вне форума Ответить с цитированием
Старый 24.07.2009, 07:44   #4
GROWZER
Пользователь
 
Аватар для GROWZER
 
Регистрация: 16.06.2009
Сообщений: 47
По умолчанию

так просто надо добавить в SELECT имена этих полей...

Код:
SELECT fam, im, ot, dr, ad, work, COUNT(fam)
FROM Table1
WHERE work=true
GROUP BY fam,im,ot HAVING COUNT(fam)>1

Последний раз редактировалось Stilet; 28.07.2009 в 08:08.
GROWZER вне форума Ответить с цитированием
Старый 24.07.2009, 07:58   #5
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,762
По умолчанию

Как вариант
Код:
SELECT tab.fam, tab.im, tab.ot, tab.dr, tab.ad FROM Table1 tab , 
(SELECT fam, im, ot, COUNT(fam)
FROM Table1 
 where  work=true 
GROUP BY fam, im, ot HAVING COUNT(fam)>1)  t
 where  tab.fam=t.fam and  tab.im=t.im and tab.ot=t.ot and  tab.work=true
ЗЫ: вроде так, надеюсь ничего не перепутал, ато не спал внимательности никакой.

Последний раз редактировалось vovk; 24.07.2009 в 11:30.
vovk вне форума Ответить с цитированием
Старый 24.07.2009, 08:18   #6
FleshDro
Пользователь
 
Регистрация: 24.07.2009
Сообщений: 12
По умолчанию

Цитата:
Сообщение от GROWZER Посмотреть сообщение
SELECT fam, im, ot, dr, ad, work, COUNT(fam)
FROM Table1
WHERE work=true
GROUP BY fam,im,ot HAVING COUNT(fam)>1
так не получится

Цитата:
Сообщение от vovk Посмотреть сообщение
Как вариант
...
ЗЫ: вроде так, надеюсь ничего не перепутал, ато не спал внимательности никакой.
ну видимо перепутал, что то не проходит
пишет что ошибка во второй строке

Последний раз редактировалось Stilet; 28.07.2009 в 08:10.
FleshDro вне форума Ответить с цитированием
Старый 24.07.2009, 08:35   #7
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

какая СУБД ?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 24.07.2009, 08:37   #8
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,762
По умолчанию

А СУБД какая?
vovk вне форума Ответить с цитированием
Старый 24.07.2009, 08:55   #9
FleshDro
Пользователь
 
Регистрация: 24.07.2009
Сообщений: 12
По умолчанию

Цитата:
Сообщение от vovk Посмотреть сообщение
А СУБД какая?
СУБД нет.
таблица FoxPro, прогу пишу в Delphi
FleshDro вне форума Ответить с цитированием
Старый 24.07.2009, 09:01   #10
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,762
По умолчанию

через БДЕ соеденяешся? там такой запрос не пройдёт.. Сейчас подумаю, если никто быстрее не напишет чтонить соображу..
vovk вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с SQL запросом DDmitriy Microsoft Office Access 4 07.05.2009 15:51
Помогите с запросом SQL пожалуйста Андрей79 SQL, базы данных 7 05.04.2009 01:08
Помогите разобраться с SQL-запросом MasterofCDM БД в Delphi 5 04.07.2008 13:42
SQL. Помогите с запросом. fluxion БД в Delphi 2 27.12.2007 08:01
Помогите с SQL запросом. Monoflextor БД в Delphi 12 29.04.2007 16:53