Форум: "Базы";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];
ВнизПосчитать максимальное? Найти похожие ветки
← →
Колобок (2005-07-06 12:20) [0]Добрый день!
В программе есть грид, в гриде есть поле (столбец) "Число". Проставляем в это поле (столбец) числа, например: 2, 2, 1, 2, 1.
Подскажите пожалуйста как найти максимальное число из введеных чисел? В этом примере максимальным будет число 2.
← →
msguns © (2005-07-06 12:31) [1]В гриде поле ? Это что, DBGrid ?
← →
Колобок (2005-07-06 12:40) [2]Да, это DBGrid.
← →
Думкин © (2005-07-06 12:44) [3]> [2] Колобок (06.07.05 12:40)
Тогда вопрос не к гриду, а к другому.
← →
msguns © (2005-07-06 12:45) [4]В гриде отображается датасет. Способов получения агрегатов из курсора (датасета) всего два (основных):
простое сканирование и сиквел запрос. Второй метод отличается от первого точностью (при конкурентном доступе в многопользовательских приложениях) и скоростью (существенно выше в большинстве случаев). Однако для его создание требуется исходный запрос, который собсна и "поствляет" данные с "сервера" на "клиент".
← →
msguns © (2005-07-06 12:46) [5]И вообще, имхо, тема должна переехать в "Базы"
← →
Колобок (2005-07-06 12:47) [6]Можно пожалуйста маленький примерчик, для лучшего закрепления материала?
← →
Alexander Panov © (2005-07-06 12:53) [7]Колобок (06.07.05 12:47) [6]
А проблема в чем?
← →
Колобок (2005-07-06 12:58) [8]Как сделать запрос для датасета, чтобы выбрать мах?
← →
msguns © (2005-07-06 13:02) [9]Какие компоненты используются в качестве датасета ?
← →
TUser © (2005-07-06 13:04) [10]Оффтопик. Есть алгоритм, который решает задачу нахождения любого (по порядку) элемента в неупорядоченном массиве за логарифмическое время.
← →
Колобок (2005-07-06 13:05) [11]FibDataSet.
← →
msguns © (2005-07-06 13:18) [12]Если стоит эх!либ, то у него есть такая фича. Если обычный, то надо взять текст запроса (св-во SelectSQL) и заменить в строке SELECT перечень полей на MAX(<Имя-поля>). Модифицированный запрос впихать в тут же созданный TIBQuery, выполнить его (Open), считать полученное значение (Fields[0].AsXXX) в переменную, закрыть запрос и убить кверю.
Что-то типаwith TIBQuery.Create(nil) do
begin
DataBase := TFIBDataSet.DataBase;
Transaction := TFIBDataSet.Transaction;
SQL := TFIBDataSet.SelectSQL
<Вырезаем из запороса все от первого пробела после слова SELECT до слова FROM>
<Вставляем вместо него " MAX(FieldName)">
Open;
MaxVal := Fields[0].AsFloat;
Close;
Free;
end;
← →
Johnmen © (2005-07-06 13:23) [13]http://sql.ru/forum/actualthread.aspx?tid=197818
забавно...
← →
msguns © (2005-07-06 13:35) [14]А у меня ошибка по этой ссылке ж(
← →
Johnmen © (2005-07-06 13:38) [15]А у меня нет ж)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.011 c