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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.05.2010, 01:28   #1
nuevegramodelamor
Пользователь
 
Регистрация: 13.09.2009
Сообщений: 75
По умолчанию поиск ближайшего минимального значения на sql

допустим есть таблица в которой одно из полей содержит значения 3;3.2;3.5;6;6.7 ну и тд...вот если введём 4,то надо что бы вывело 3.5 так как это ближайшее минимальное значение....на sql это как-то реализовать можно?
nuevegramodelamor вне форума Ответить с цитированием
Старый 11.05.2010, 08:10   #2
Z1000000
Форумчанин
 
Регистрация: 04.05.2010
Сообщений: 495
По умолчанию

SELECT ID, ABS(FIELD1-4)
FROM TABLE1
ORDER BY ABS(FIELD1-4) DESC

И берешь первую строчку.
Нажми на весы, поставь +
Для благодарностей : WebMoney WMR R252732729948
Z1000000 вне форума Ответить с цитированием
Старый 11.05.2010, 08:47   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

1) идея отличная. можно так:
Код:
SELECT TOP 1 ID, FIELD1
FROM TABLE1 
ORDER BY ABS(FIELD1-4) DESC
или

2) to nuevegramodelamor
а если в таблице есть значениния 4.1 и 3.5 — какое из них должно быть выбрано в качестве "ближайшее минимальное значение"?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 11.05.2010, 08:49   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
TOP 1
Это по-моему только на MS SQL сработает
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.05.2010, 11:32   #5
nuevegramodelamor
Пользователь
 
Регистрация: 13.09.2009
Сообщений: 75
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение

2) to nuevegramodelamor
а если в таблице есть значениния 4.1 и 3.5 — какое из них должно быть выбрано в качестве "ближайшее минимальное значение"?
хм)тогда да...ближайшее число всё-так лучше что бы бралось..4.1
nuevegramodelamor вне форума Ответить с цитированием
Старый 11.05.2010, 19:05   #6
nuevegramodelamor
Пользователь
 
Регистрация: 13.09.2009
Сообщений: 75
По умолчанию

хм...а в дельфях это как сделать?что-то не понятно
nuevegramodelamor вне форума Ответить с цитированием
Старый 11.05.2010, 20:21   #7
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
лучше что бы бралось..4.1
Так решение Z1000000 так и сделает - ищется ближайшее число к указанному (больше/меньше нивелируются взятием модуля (ABS = модуль числа))

Цитата:
хм...а в дельфях это как сделать?что-то не понятно
да как обычно - AdoConnection, AdoQuery, связать, настроить, ну и текст запроса в AdoQuery, выполнить, взять первую запись..

К слову, СУБД у Вас какая?!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 11.05.2010, 20:21   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

//Грохните дубль, плиз! Глючит Инет и сообщение продублировалось.. сорриии

Последний раз редактировалось Serge_Bliznykov; 11.05.2010 в 20:23.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск минимального элемента в матрице F1eCSo Помощь студентам 0 04.02.2010 17:20
Поиск минимального и максимального пути в графе!!!! OZZY_91 Помощь студентам 1 18.11.2009 13:20
Поиск минимального маршрута, ошибка в коде Paul Hindenburg Общие вопросы C/C++ 2 31.05.2009 19:57
правильно написать формулу нахождения минимального значения из диапазона чисел в строке Legame Microsoft Office Excel 14 01.03.2009 22:29
Поиск минимального (максимального) элемента массива Radamant Помощь студентам 10 24.12.2008 17:44