我无法解决SQL SERVER中的那个神秘问题。
这是我尝试做的一个例子,但它没有用。
DECLARE @Total int;
SET @Total = (SELECT COUNT(*)-10 FROM MYTABLE)
SELECT TOP @Total IdColumn FROM MYTABLE
如何使用以下查询
从 MYTABLE 中选择 COUNT(*)-10
作为一个整数变量,在我的代码中的其他地方。
我无法解决SQL SERVER中的那个神秘问题。
这是我尝试做的一个例子,但它没有用。
DECLARE @Total int;
SET @Total = (SELECT COUNT(*)-10 FROM MYTABLE)
SELECT TOP @Total IdColumn FROM MYTABLE
如何使用以下查询
从 MYTABLE 中选择 COUNT(*)-10
作为一个整数变量,在我的代码中的其他地方。
在 top 子句中使用变量时,需要使用括号,如下所示:
从 MYTABLE 中选择顶部(@Total)IdColumn
如果您使用的是 SQL2000,则不能在 top 子句中使用变量。如果你尝试,你会得到一个解析/语法错误。相反,您可以使用 RowCount,如下所示:
DECLARE @Total int;
SET @Total = (SELECT COUNT(*)-10 FROM MYTABLE)
Set RowCount @Total
SELECT IdColumn FROM MYTABLE
Set RowCount 0
使用括号:以下对我有用:
DECLARE @Total int;
SET @Total = (SELECT COUNT(*)-10 FROM MYTABLE)
SELECT TOP (@Total) IdColumn FROM MYTABLE