当我需要将 SQL 语句的结果存储在变量中时,我可以使用这样的代码
declare @Max as int
set @Max=(select max(field_name) from table_name)
但现在我想知道是否可以对多个变量做同样的事情,例如像
这样的句子select max(field_name), min(field_name) from table_name
如何将结果存储在两个名为@Max 和@Min 的变量中?
我知道这可以使用游标来完成
DECLARE @Max as int, @Min as int
DECLARE cursor_minmax CURSOR FOR
Select max(field_name), min(field_name) from table_name
OPEN cursor_minmax
FETCH NEXT FROM cursor_minmax INTO @Max,@Min
CLOSE cursor_minmax
DEALLOCATE cursor_minmax
但我想知道是否可以在不使用游标的情况下分配值。
最佳答案
您可以这样做:
select @max = max(field_name), @min = min(field_name)
from table_name
我明白了。 . .你的困惑是你想使用“set”。您只能使用“set”设置一个值。您可以使用“选择”设置任意多个值。
关于sql - 如何在不使用游标的情况下一次将查询结果分配给多个变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11693214/