Задача: Есть столбец с датами, некоторые из которых = NULL Нужно выбрать MIN/MAX дату, но если в столбце есть NULL - то вернуть NULL Решение: Выбрать максимум/минимум в столбце - легко с помощью обычной агрегатной функции, типа SELECT MIN(start_date) FROM periods Однако в этом случае в выборку не попадают значения NULL. Чтобы вернуть NULL - необходимо провести несложный анализ: SELECT CASE WHEN COUNT(*) = COUNT(start_date) THEN MIN(start_date) END FROM periods И всё! #
SQL Справочник v0.05 © 2007-2025 Igor Salnikov aka SunDoctor