gpt4 book ai didi

c# - 我们如何在子查询 SQL Server 中分配局部变量

转载 作者:太空宇宙 更新时间:2023-11-03 10:39:01 24 4
gpt4 key购买 nike

我试图在子查询中为变量设置一个值,但它不起作用。

这是我的查询:

declare @val1 int
declare @val2 int

select @val1 = sum(column1)
,(select @val2 = (select sum(column2) from table2))
,(@val1+@val2)Result
from table 1

我想做的是为子查询设置 @val2 请帮助我我的意思是在子查询中设置而不是单独的选择语句

最佳答案

只需使用 3 个单独的选择:

select @val1 = sum(column1) from table1 
select @val2 = sum(column2) from table2
select (@val1+@val2) as Result

或者你也可以写2个选择:

 select @val1 = sum(column1), 
@val2 = (select SUM(column2) from table2)
from table1
select (@val1 + @val2) Result

但不仅仅是 1 个选择:

A SELECT statement that assigns a value to a variable must not be combined with data-retrieval operations

如果你需要一次完成所有的选择并返回一个记录集,不要使用变量,这样做:

SELECT sum1 + sum2 FROM (
select sum(column1) as sum1,
(select SUM(column2) from table2) as sum2
from table1
) subquery

关于c# - 我们如何在子查询 SQL Server 中分配局部变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26190463/

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