gpt4 book ai didi

sql - 在 UNION ALL 结果集中使用聚合函数

转载 作者:行者123 更新时间:2023-12-03 10:02:59 24 4
gpt4 key购买 nike

如何在 UNION ALL 结果集中使用聚合函数

例如

SELECT A,B FROM MyTable
UNION ALL
SELECT B,C FROM MYAnotherTable

结果集将是
    A  B
--------------
1 2
3 4
4 5
6 7

当我尝试获取 MAX(A) 时它返回 3 .我要 6 .

当我尝试获取 MAX(B) 时它返回 4 .我要 7 .

除了 Max() , 我可以得到另一个用户定义的聚合函数吗?

例如:

( SELECT TOP 1 A WHERE B=5 )

真实案例 Here

最佳答案

试试这个方法:

select max(A)
from(
SELECT A,B FROM MyTable
UNION ALL
SELECT B,C FROM MYAnotherTable
) Tab

SQL fiddle DEMO

如列 A是 varchar (你在下面的评论中说过)试试这种方式:
select max(A)
from(
SELECT cast(A as int) as A,B FROM MyTable
UNION ALL
SELECT B,C FROM MYAnotherTable
) Tab

TOP 1
select max(A)
from(
SELECT top 1 cast(A as int) as A,B FROM MyTable
UNION ALL
SELECT B,C FROM MYAnotherTable
) Tab

关于sql - 在 UNION ALL 结果集中使用聚合函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17547372/

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