UNION添加两个结果并删除重复项UNION ALL重复项不会删除。 - s( K O( k+ f: r& g0 XUNION还对最终输出进行排序。& m8 L2 v% Z* Y+ X% K) i
我想要的是UNION ALL没有重复和排序。有可能吗?9 u' y0 A: B; l s
这样做的原因是,我希望第一个查询结果在最终结果的顶部,第二个查询结果在底部(每个查询的排序似乎都是单独运行的)。/ k8 k( i6 r5 }8 W3 }
9 Z. B, G6 l6 u) |" J: L% S解决方案: 6 }0 q; `& ~1 L$ q( D2 H 我注意到这个问题有很多见解,所以我会先解决你 没有 提出的问题!- [9 V/ ]3 E0 x- @6 _$ f
关于标题。带有 ‘istinct’的Sql Union All ,只需更换UNIONALL为即可UNION。这可以删除重复项。+ S4 J3 I: S. q; A
对于您的具体问题,给出的澄清是查询应该是优先级,因此重复项应该从底部删除,您可以使用它" h B* _# @: c$ T+ o! I6 U5 A9 ~
SELECT col col二、 MIN(grp) AS source_groupFROM (SELECT 1 AS grp, col col2 FROM t UNION ALL SELECT 2 AS grp, col col2 FROM t2) AS tGROUP BY col col2ORDER BY MIN(grp), col