Сетка SQL запрос не работает с объединением всех и упорядочить по - PullRequest
0 голосов
/ 27 марта 2020
SELECT a, b 
FROM "table1".table1 table1 
ORDER BY a DESC

UNION ALL

SELECT a, b 
FROM "table1".table1 table1 
ORDER BY a ASC

Этот запрос не работает. По отдельности объединить все работы и упорядочить по работам, но не работает, когда вместе. Может кто-нибудь помочь, пожалуйста?

Ответы [ 3 ]

1 голос
/ 27 марта 2020

Ответили на этот вопрос на форуме GridGain

Это должно работать:

SELECT a, b, b, NULL FROM "table1".table1 table1
UNION ALL
SELECT a, b, NULL, b FROM "table1".table1 table1
ORDER BY 3 DESC, 4 ASC
0 голосов
/ 04 апреля 2020

Отдельный запрос не будет поддерживать порядок, если мы используем UNION. Попробуйте удалить заказ в отдельном запросе, и после объединения они выполнят заказ, и тогда он будет работать.

0 голосов
/ 27 марта 2020

Вы можете отсортировать по внешнему запросу:

select a, b
from (
    select a, b, 0 x from table1
    union all select a, b, 1 from table1
) t
order by
    x,
    case when x = 0 then a end desc,
    case when x = 1 then a end
...