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

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

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 09.03.2010, 13:09   #1
Tvik
Пользователь
 
Регистрация: 09.03.2010
Сообщений: 17
Вопрос Фильтрация

Вообще обычную фильтрацию сделал а вот как можно выполнить фильтрацию с диапазоном данных например: отфилтровать по дате в промежутке с 08.11.2005 по 03.03.2006??

Последний раз редактировалось Tvik; 09.03.2010 в 13:14.
Tvik вне форума
Старый 09.03.2010, 13:14   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Смотря какая СУБД
Как правило не парясь так и указывают
(поле>='08.11.2005')and(поле<='03.0 3.2006')
I'm learning to live...
Stilet вне форума
Старый 09.03.2010, 13:14   #3
Tvik
Пользователь
 
Регистрация: 09.03.2010
Сообщений: 17
По умолчанию

скриншот с примером

13:16

БД в Access соединял с помощью ADO

У нас принято пользоваться кнопочкой "Правка", дабы не плодить посты подряд, друг за другом.
Читаем правила. Рекомендую. Помимо общих правил форума есть и дополнения к ним в каждом разделе...
Уважайте форумчан, и они ответят вам взаимностью...
Модератор
Изображения
Тип файла: jpg Безымянный.JPG (182.3 Кб, 156 просмотров)

Последний раз редактировалось mihali4; 09.03.2010 в 14:51.
Tvik вне форума
Старый 09.03.2010, 13:32   #4
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Код:
SELECT * FROM table WHERE (Дата Прихода>='08.11.2005') and (Дата Прихода<='03.03.2006')
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума
Старый 09.03.2010, 14:05   #5
Tvik
Пользователь
 
Регистрация: 09.03.2010
Сообщений: 17
По умолчанию

Цитата:
Сообщение от artemavd Посмотреть сообщение
Код:
SELECT * FROM table WHERE (Дата Прихода>='08.11.2005') and (Дата Прихода<='03.03.2006')
немоглибы вы написать, куда это вписывать, с SQL запросами не знаком особо...

Прекращайте ненужное цитирование предыдущих сообщений!
Рекомендую. Помимо общих правил форума есть и дополнения к ним в каждом разделе...
А кроме кнопки "Цитата" внизу есть простое окно для ввода своего сообщения.
Модератор

Последний раз редактировалось mihali4; 09.03.2010 в 14:51.
Tvik вне форума
Старый 09.03.2010, 14:16   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
ADOQuery.SQL.Text:='Запрос Артема';
ADOQuery.open;
Все.
I'm learning to live...
Stilet вне форума
Старый 09.03.2010, 14:52   #7
Tvik
Пользователь
 
Регистрация: 09.03.2010
Сообщений: 17
По умолчанию

я использовал ADO Table вместо него поставить Query?
затем создать кнопку и написать код
Код:
ADOQuery.SQL.Text:='SELECT * FROM table WHERE (Дата Прихода>='08.11.2005') and (Дата Прихода<='03.03.2006')';
ADOQuery.open;
что тогда писать в Edit для поиска? или SQL запрос писать в ADOQuery->SQL->(T Strings)?
Tvik вне форума
Старый 09.03.2010, 14:57   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
я использовал ADO Table
Тогда
Код:
ADOTable.Filter:='Дата Прихода>='+QuotedStr('08.11.2005')+' AND '+'Дата Прихода<='+QuotedStr('03.03.2006')+;
Цитата:
что тогда писать в Edit для поиска?
Не понял... Какого эдита? Для чего он у тебя там?
I'm learning to live...
Stilet вне форума
Старый 09.03.2010, 19:27   #9
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Видимо, он задает граничные даты в эдитах.
mihali4 вне форума
Старый 10.03.2010, 04:36   #10
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Цитата:
Видимо, он задает граничные даты в эдитах.
Тогда лучше сделать так:
Код:
ADOTable.Filter:='Дата Прихода>='+QuotedStr(Edit1.Text)+' AND '+'Дата Прихода<='+QuotedStr(Edit2.Text)+;
+ рекомендую сделать проверку на вводимые данные эдитах, в событии OnKeyPress, чтобы пользователь не мог нажать пробел, чтобы не было, например, такого: 08. 11.2005 и чтобы пользователь мог вводить только цифры.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Фильтрация Screame Microsoft Office Excel 7 30.07.2009 13:49
Фильтрация Screame Microsoft Office Excel 7 01.07.2009 22:37
Фильтрация Felonalex БД в Delphi 4 24.10.2008 20:09
Фильтрация Лукманов Александр БД в Delphi 1 26.06.2008 10:18