Mysql: использовать order by и ограничивать отдельные запросы при использовании union all - PullRequest
0 голосов
/ 08 мая 2018

Я знаю, что синтаксис MySql не позволяет нам делать то, что я ищу, но я прошу обходной путь для моей проблемы.

Я хочу выполнить несколько запросов и использовать объединение для отображения полного набора данных, используя order by и limit для каждого запроса. Я использовал фальшивые параметры и имена таблиц из-за юридических проблем.

select 
    x,
    y,
    z
from tbl1
where z = 'xxxx'
and y = 111
and x = 'text'
order by rand()
limit 11966
union all
select 
    x,
    y,
    z
from tbl1
where z = 'xxxx'
and y = 222
and x = 'text'
order by rand()
limit 3560
union all
select
.
.
.
.
.

Кто-нибудь знает обходной путь к этому?

1 Ответ

0 голосов
/ 08 мая 2018

Используйте скобки:

(select ... order by ... limit ...) 
union all
(select ... order by ... limit ...) 
union all
(select ... order by ... limit ...) 
union all
...
...