gpt4 book ai didi

sql - oracle数据库中的union和union all

转载 作者:行者123 更新时间:2023-12-02 09:13:39 25 4
gpt4 key购买 nike

在执行以下两个查询时(重点关注两个星号 * ____ * 之间的部分),我真的很想知道 UNION ALL 的位置如何改变输出。我无法理解。

查询1

SELECT 'Jack' AS Name, 100 AS Marks FROM DUAL 
*UNION All SELECT 'Jack' AS Name, 100 AS Marks FROM DUAL*
UNION SELECT 'Jack' AS Name, 100 AS Marks FROM DUAL

查询结果

NAME    MARKS
Jack 100

查询2

SELECT 'Jack' AS Name, 100 AS Marks FROM DUAL 
UNION SELECT 'Jack' AS Name, 100 AS Marks FROM DUAL
*UNION ALL SELECT 'Jack' AS Name, 100 AS Marks FROM DUAL*

查询结果

NAME    MARKS
Jack 100
Jack 100

谢谢:)

最佳答案

如果您不指定括号,select 将依次执行。所有集合运算符 minusunionunion allintersect 具有相同的优先级。

Oracle Documentation

在第一个查询中,UNION 在最后执行,因此每个查询不会有重复行。在第二个中,UNION ALL 在最后执行,因此每个查询都会有重复行。

关于sql - oracle数据库中的union和union all,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49257562/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com