| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > О множественной фильтрации в BDE |
| Автор: Johnny M 17.4.2005, 19:51 |
| Привет всем. Столкнулся с такой проблемой. Допустим, из БД нужно выбрать все значения (например, сортировать поле Year со значением года выпуска) Table1.Filter:='Year = '+QuotedStr('2005'); в таблице после этого останутся только записи со значением 2005 в этом поле. Все прекрасно - НО - 1) Как же работать с многочисленным выбором - не только по одному полю? (например, нужна сортировка по полю "год выпуска" такой то, по полю "месяц" такой то, по полю "день" такой то, ну и т.д. Справляется ли с данным типом фильтрации свойсво Filter или нет? Спасибо заранее |
| Автор: Pakshin A. S. 17.4.2005, 21:11 |
| Лично мне никогда не приходил в голову данный вопрос... я использую SQL... |
| Автор: offline 17.4.2005, 23:10 |
| А "and" пробовал? |
| Автор: Johnny M 18.4.2005, 07:41 | ||
пробовал. Не помогает. Может, снтаксис неправильный был? Нужна ведь сортировка по первому значению, потом - из получившегося списка - вторая сортировка, потом - из того что останется - третья и т. д. Может, верно - только SQL поможет? |
| Автор: DimW 18.4.2005, 08:04 | ||
В качестве альтернативы могу предложить вариант когда пользователь сам определяет по какому полю отсортировать данные:
При клике на нужную пользоателю колонку DBGrid, выполняется выборка данных и сортировка по имени колонки на которую кликнул пользователь. Конечно лучше формировать запрос статически и передовать сортируемое поле как параметр. Query, DataSource, DBGrid. Добавлено @ 08:13 По нескольким полям можно отсортировать так: SELECT год_выпуска ,месяц ,день FROM TABLE NAME ORDER BY год_выпуска, месяц, день Опять таки SQL... |
| Автор: offline 18.4.2005, 15:36 | ||||
Что-то я логики не вижу. Ты хочешь 1.отсортировать по году 2. из получившегося набора отсортировать по месяцу 3. из получившегося набора отсортировать по дате а не проще сортировать по году и сортировать по месяцу и сортировать по дате ведь результат наверное будет одинаковый
|
| Автор: Akella 19.4.2005, 08:46 | ||
Так тебе нужна фильтрация или сортировка? Это две разные вещи. Пользуйся поиском по форуму: http://forum.vingrad.ru/index.php?showtopic=31536&hl=фильтрация http://forum.vingrad.ru/index.php?showtopic=38859&hl=фильтрация http://forum.vingrad.ru/index.php?showtopic=37207&hl=фильтрация http://forum.vingrad.ru/index.php?showtopic=40539&unread=1&hl=фильтрация http://forum.vingrad.ru/index.php?showtopic=34426&hl=фильтрация http://forum.vingrad.ru/index.php?showtopic=43822&unread=1&hl=фильтрация По поводу AND: http://forum.vingrad.ru/index.php?showtopic=33129&hl=фильтрация |