UNION添加两个结果并删除重复项UNION ALL重复项不会删除。 1 M0 }& ~+ g4 E# H6 m" V9 f5 i$ n+ R1 F2 b0 lUNION还对最终输出进行排序。4 D/ M; ]4 I; g/ z. }9 ~" V6 l+ ~
我想要的是UNION ALL没有重复和排序。有可能吗?! R/ c% m8 H H; ~3 [* p7 A
这样做的原因是,我希望第一个查询结果在最终结果的顶部,第二个查询结果在底部(每个查询的排序似乎都是单独运行的)。$ A( B8 u# F" E" t
% a' J% @! x% R0 t解决方案: 3 X' B* X" D& L! o* V) }( ]+ @" q 我注意到这个问题有很多见解,所以我会先解决你 没有 提出的问题! + X9 `, Q9 x$ S* ~关于标题。带有 ‘istinct’的Sql Union All ,只需更换UNIONALL为即可UNION。这可以删除重复项。. B! t9 f7 ]/ ^6 G
对于您的具体问题,给出的澄清是查询应该是优先级,因此重复项应该从底部删除,您可以使用它 ' b! n' v0 z7 Y" |$ k1 {0 K' ]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