是否可以将UNION块组合在一起?我想为每个人获得一个限制。像
这样的东西SelectQuery1 LIMIT 1
UNION
(SelectQuery2 UNION SelectQuery3) LIMIT 2
我想获得第一个查询中的第一行,然后我想在获得前两行之前先将Query2和Query3结合起来。
答案 0 :(得分:3)
我是这么认为的。只需使用子查询:
(SelectQuery1
LIMIT 1
)
UNION
(select *
from (SelectQuery2 UNION
SelectQuery3
) ss
LIMIT 2
)
请注意,这是该怎么做的示意图。确切的语法可能取决于您的查询表达式。
此外:
union all
。 union
删除重复项,这会增加额外的处理。order by
时,通常需要某种limit
。