![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 26.05.2009
Сообщений: 7
|
![]()
1. Ребят, такая ситуация: необходимо реализовать поиск фирм по введенному пользывателем в Edit году. Не знаю как вытащить из даты сам год. А простой запрос при вводе в эдит полной даты выглядит так (Дата - название поля в базе данных, base - название базы, формат даты 00.00.0000):
procedure TSearchForm.BitBtn1Click(Sender: TObject); begin DataModule1.FindQuery.Active:=false ; DataModule1.FindQuery.SQL.Clear; DataModule1.FindQuery.SQL.Add('SELE CT *'); DataModule1.FindQuery.SQL.Add('FROM base'); DataModule1.FindQuery.SQL.Add('WHER E Дата LIKE '''+FindEdit.Text+''''); DataModule1.FindQuery.Active:=true; Close; end; Как сделать так, чтобы при поиске вводился только год? 2. Вторая проблема такого рода. Все таже база данных скриншот которой ниже. Необходимо вывести фирму, которая чаще всего выступала в роли истца. Буду очень благодарен за помощь! ![]() |
![]() |
![]() |
![]() |
#2 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
1. Что-то типа:
Код:
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 29.01.2009
Сообщений: 411
|
![]()
1. Можно написать так
Код:
Код:
|
![]() |
![]() |
![]() |
#4 |
Регистрация: 26.05.2009
Сообщений: 7
|
![]()
Так, с поиском вы помогли за что вам спасибо! А вот со вторым всеравно проблема. Есть ли еще какие-нибудь способы?
DataModule1.FindQuery.SQL.Add('WHER E (Year(Дата) ='+FindEdit.Text+')'); Последний раз редактировалось LANDER; 27.05.2009 в 09:57. |
![]() |
![]() |
![]() |
#5 | |
Форумчанин
Регистрация: 29.01.2009
Сообщений: 411
|
![]() Цитата:
Как пробуете сделать? Чем не устривает приведенный мною запрос? |
|
![]() |
![]() |
![]() |
#6 |
Регистрация: 26.05.2009
Сообщений: 7
|
![]()
Принцип работы не могу понять, так как SQL не владею вовсе. Возможно ли както просто сделать проверку на max Истец? Ваш запрос я так понимаю должен выглядить следующим образом в моем случае?
procedure TForm1.Button8Click(Sender: TObject); begin DataModule1.RequestQuery.Active:=fa lse; DataModule1.RequestQuery.SQL.Clear; DataModule1.RequestQuery.SQL.Add('S ELECT base.Истец, Count(base.Истец) as [Count-Истец]'); DataModule1.RequestQuery.SQL.Add('F ROM base'); DataModule1.RequestQuery.SQL.Add('G roup by base.Истец'); DataModule1.RequestQuery.SQL.Add('O rder by Count(base.Истец) Desc'); DataModule1.RequestQuery.Active:=tr ue; RequestForm.ShowModal; end; Последний раз редактировалось LANDER; 27.05.2009 в 10:06. |
![]() |
![]() |
![]() |
#7 | |
Форумчанин
Регистрация: 29.01.2009
Сообщений: 411
|
![]() Цитата:
Если нужно вывести только того исца у кого больше всех записей,то можно сделать следующее Кидаем на форму еще один Query в его свойстве SQL пишем Код:
Код:
|
|
![]() |
![]() |
![]() |
#8 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
Да ну вас совсем...
А вложенные запросы с объединением по одной таблице - не слышали? Зачем еще один Query-то? Обзовите таблицу в одном случае BASE1, а для вложенной выборки - BASE2... |
![]() |
![]() |
![]() |
#9 |
Регистрация: 26.05.2009
Сообщений: 7
|
![]()
Ну сдесь или я чтото не пойму или вы чтото упустили. Смотрите, RequestQuery также должен содержать в свойстве SQL строки иначе я не смогу добавить необходимые поля для связи. Цитирую: "затем в Query который связан с dbgrid прописываем следующий запрос" - это же сам запрос по клику на кнопку. Также? Но все же я пробывал в SQL свойство RequestQuery прописывать код что для Button8. Результат конечно же ошибка.
Последний раз редактировалось LANDER; 28.05.2009 в 08:50. |
![]() |
![]() |
![]() |
#10 | |
Регистрация: 26.05.2009
Сообщений: 7
|
![]() Цитата:
ADOQuery1 с запросом: Код:
|
|
![]() |
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
SQL запрос + SQL запрос | BeSeech | Microsoft Office Access | 10 | 14.02.2009 17:04 |
запрос sql | sleeper_Izh | SQL, базы данных | 2 | 20.06.2008 11:27 |
SQL запрос | SERG1980 | БД в Delphi | 6 | 19.10.2007 23:03 |
SQL-запрос | Alexey_vyb | БД в Delphi | 4 | 22.05.2007 18:52 |
SQL запрос на основе другого SQL запрса... | Timoxa | БД в Delphi | 1 | 07.01.2007 18:15 |