Исправление ошибок в запросе MySQLMySql

Форум по Mysql
Ответить
Anonymous
 Исправление ошибок в запросе MySQL

Сообщение Anonymous »

Я пытаюсь найти медиану в этой задаче MySQL:
Минимально воспроизводимый пример:

Код: Выделить всё

CREATE TABLE STATION (LAT_N DECIMAL(10,4));
INSERT INTO STATION VALUES (10.5), (20.3), (15.7), (25.1), (18.9);
Но мне все еще трудно найти ошибки в моем запросе.
Мой код:

Код: Выделить всё

WITH CNT AS(
SELECT COUNT(*) AS N
FROM STATION
)

SELECT ROUND(
CASE
WHEN N % 2 = 1 THEN (
SELECT LAT_N
FROM STATION
ORDER BY LAT_N ASC
LIMIT 1 OFFSET (N DIV 2)
)

ELSE (
SELECT AVG(LAT_N) FROM(
SELECT LAT_N
FROM STATION
ORDER BY LAT_N ASC
LIMIT 2 OFFSET ((N - 1) DIV 2)
)
AS TEMP
)

END, 4
) AS MED

FROM CNT;
Сообщение об ошибке:
HackerRank показывает только «Синтаксическую ошибку» без конкретных подробностей.
Что я пробовал:
  • Проверил CTE отдельно, он работает нормально
Ожидается вывод:
18,9000 (среднее значение, округленное до 4 десятичных знаков)

Подробнее здесь: https://stackoverflow.com/questions/797 ... ysql-query
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «MySql»