首页 > 解决方案 > 如何为 SQL 变量赋值

问题描述

我有 SQL 代码,我将嵌套查询的输出分配给一个变量,但在附近出现错误语法错误)

下面是代码:

set @MAX_CNT =(select coun from (select MAX(SEQ) Coun from (
 SELECT ROW_NUMBER()OVER(ORDER BY COUNTRY)SEQ,*  FROM #TEMP1
)xx)y)

错误:

Msg 102, Level 15, State 1, Line 53
Incorrect syntax near ')'.

不确定是什么问题

set @MAX_CNT =(select coun from (select MAX(SEQ) Coun from (
 SELECT ROW_NUMBER()OVER(ORDER BY COUNTRY)SEQ,*  FROM #TEMP1
)xx)y)

它应该将值分配给变量。

标签: sqlsql-servernested-queries

解决方案


你为什么不直接写这个?

select @MAX_CNT = count(*)
from #temp1;

不需要使用带有聚合的窗口函数。


推荐阅读