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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2014, 10:55   #1
sasha_14-88
Пользователь
 
Регистрация: 19.05.2014
Сообщений: 48
Вопрос фильтрация данных(БД)

как установить фильтр, чтобы в дбгрид выводились только те температуры, которые выше средней(среднюю нашел)..
делаю такое впервые.. не ругайте)
sasha_14-88 вне форума Ответить с цитированием
Старый 03.06.2014, 11:50   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Вопрос уже обсуждался. Гарчичник тебе надо выписать))
Человек_Борща вне форума Ответить с цитированием
Старый 03.06.2014, 11:51   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

dbgrid отображает то, что есть в связанном датасете (Query или Table)
а в нём можно включить фильтрацию.

примерно так:
Код:
  ADOTable1.Filtered:=false;
  ADOTable1.Filter := 'ИмяПоляГдеХранитсяТемпература > ' + FloatToStr(ВашаСредняяТемература);
  ADOTable1.Filtered:=true;
не забудьте:
вместо ADOTable1 указать имя вашего компонента, где находятся данные.
вместо ИмяПоляГдеХранитсяТемпература указать реально название поля из датасета, где находится температура
вместо ВашаСредняяТемература подставить переменную, где находится найденное среднее значение температуры

p.s. вашу задачу можно решить через SQL запрос. Тогда фильтрация будет не нужна, в набор данных будут отобраны только нужные значения (с температурой выше средней).

p.p.s. на будущее - выкладывайте проект/код. Это резко повышает шансы получить конкретный ответ.


Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
Вопрос уже обсуждался. Гарчичник тебе надо выписать))
угу. по сути Вы правы. но, чтобы не плодить множества тем - я старую прикрыл.
Ведь формально - это уже другая тема (там TC искал среднюю температуру, тут - задача отобрать нужные записи по условию)...

Последний раз редактировалось Serge_Bliznykov; 03.06.2014 в 11:55.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 03.06.2014, 12:05   #4
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Цитата:
Ведь формально - это уже другая тема (там TC искал среднюю температуру, тут - задача отобрать нужные записи по условию)...
Цитата:
Народ, как в базе данных сделаной в делфи(тема прогноз погоды) определить среднюю температуру и выполнить поиск дней, когда температура была выше средней.
Фильтрация от поиска не сильно отличается...

По теме:
Берем BDGrid1.DataSource.DataSet, у него есть Filter и Filtred свойства. Пишем условие SQL'ом в Filter, и ставим Filtred в True. Все. DBGrid отобразить записи подпадающие по условия.


p.S. Почему эта тема в общих вопросах? Есть же раздел про БД.
Человек_Борща вне форума Ответить с цитированием
Старый 03.06.2014, 12:30   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Пишем условие SQL'ом в Filter
Не совсем так просто. Там похоже, но не совсем, обычно только простые условия и от типа данных зависимость. Дату-время стоит только попробовать туда засунуть
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Фильтрация данных Дмитрий mause Помощь студентам 2 29.10.2012 13:27
Фильтрация данных uiivalet Общие вопросы Delphi 0 10.03.2012 21:38
Фильтрация данных snikers987 PHP 1 07.02.2011 23:36
фильтрация данных elen1khp БД в Delphi 6 28.09.2009 20:01
Фильтрация данных Gladiator БД в Delphi 4 23.05.2009 12:37