Пожалуйста, попробуйте ниже запрос, он будет динамически разбивать строки на столбцы без каких-либо параметров, просто замените «Время» на имя вашего столбца.
SELECT b.*, c.* from
(SELECT CEILING(COUNT(id) / 2) as totalId from test) as a JOIN
(SELECT id as id1, Time as column1 FROM test) as b LEFT JOIN
(SELECT id as id2, Time as column2 FROM test) as c
ON b.id1 = c.id2-a.totalId
WHERE b.id1 < a.totalId+1
Вы можете заменить * на имя столбца также так:
SELECT b.column1, c.column2 from
(SELECT CEILING(COUNT(id) / 2) as totalId from test) as a JOIN
(SELECT id as id1, Time as column1 FROM test) as b LEFT JOIN
(SELECT id as id2, Time as column2 FROM test) as c
ON b.id1 = c.id2-a.totalId
WHERE b.id1 < a.totalId+1