У меня есть таблица с числовым столбцом, которая содержит как положительные, так и отрицательные числа. Как найти запись с номером det, самым близким к нулю?Как вернуть значение, самое близкое к нулю
Этот запрос
SELECT MIN(ABS(dNumber))
FROM myTable
возвращает опр наименьшее абсолютное значение. Однако я хочу, чтобы возвращаемое значение было подтверждено.
Так что если myTable содержит 2 записи; один с dNumber = 2000, второй с dNumber = -1000, я хочу, чтобы запрос возвращался -1000, а не 1000.
EDIT: Забыл упомянуть, что это должно быть в совокупности funtion как его часть запроса с GROUP BY
SELECT Key1, Key2,
SUM(CASE WHEN /*condition1*/ THEN dNumber ELSE NULL END) AS 'Value1',
SUM(CASE WHEN /*condition2*/ THEN dNumber ELSE NULL END) AS 'Value2',
MIN(ABS(dNumber)...) AS 'ClosestToZeroAndSigned'
FROM myTable
/*joins*/
WHERE /*conditions*/
GROUP BY Key1, Key2
оригинальное сообщение отредактировано – hightow
Я заметил ваш EDIT и улучшил свой ответ – ASh