作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
UNION
连接两个结果并删除重复项,而 UNION ALL
不删除重复项。UNION
还对最终输出进行排序。
我想要的是没有重复且没有排序的UNION ALL
。这可能吗?
这样做的原因是我希望第一个查询的结果位于最终结果的顶部,第二个查询位于底部(并且每个查询都像单独运行一样排序)。
最佳答案
我注意到这个问题得到了很多浏览,因此我将首先解决一个您没有问过的问题!
关于标题。要实现“Sql Union All with“distinct””,只需将 UNION ALL
替换为 UNION
即可。这具有删除重复项的效果。
对于您的具体问题,考虑到“第一个查询应具有“优先级”,因此应从底部删除重复项”的说明,您可以使用
SELECT col1,
col2,
MIN(grp) AS source_group
FROM (SELECT 1 AS grp,
col1,
col2
FROM t1
UNION ALL
SELECT 2 AS grp,
col1,
col2
FROM t2) AS t
GROUP BY col1,
col2
ORDER BY MIN(grp),
col1
关于sql - 如何在不排序的情况下执行UNION? (SQL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7552019/
我是一名优秀的程序员,十分优秀!