select FIELD
from TABLE
order by FIELD
LIMIT 1
OFFSET (select ceil(count(*)/2) from TABLE);
Я получаю сообщение об ошибке. Можно ли использовать 2-й выборный оператор таким образом, поскольку он будет возвращать только число. Если нет, то почему?
Вам нужно пойти с динамическим MySQL с этим.
SET @OFFSET = "( SELECT CEIL(COUNT(*) / 2) FROM test )";
SET @SQL = "
SELECT
a
FROM
test
ORDER BY a
LIMIT 1
OFFSET ?
";
PREPARE dynamic FROM @SQL;
EXECUTE dynamic USING @OFFSET;
where
илиhaving