Встречается на собеседованиях • сегодня
Как рассчитать значение медианы в SQL без функции
В SQL без встроенной функции медиану можно найти, отсортировав данные и выбрав среднее значение (или одно из центральных). Для нечетного количества строк берется центральное значение, для четного — среднее двух центральных.
Пример для PostgreSQL (аналогично работает в других СУБД с небольшими изменениями):
sql
WITH ranked_data AS (
SELECT value,
ROW_NUMBER() OVER (ORDER BY value) as row_num,
COUNT(*) OVER () as total_count
FROM table_name
)
SELECT AVG(value) as median
FROM ranked_data
WHERE row_num IN (
(total_count + 1) / 2,
(total_count + 2) / 2
);Для больших таблиц этот метод может быть неэффективен из-за полной сортировки данных. В некоторых СУБД есть оптимизации, например MEDIAN() в Oracle или PERCENTILE_CONT(0.5) в современных версиях.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы