Wie kann eine dynamische Variable die Anzahl der Zeilen festlegen, die in SQL Server zurückgegeben werden sollen? Unten ist keine gültige Syntax in SQL Server 2005+:
DECLARE @count int
SET @count = 20
SELECT TOP @count * FROM SomeTable
sql
sql-server-2005
eddiegroves
quelle
quelle
Antworten:
Dies funktioniert nur mit SQL 2005+
quelle
Die Syntax "select top (@var) ..." funktioniert nur in SQL SERVER 2005+. Für SQL 2000 können Sie Folgendes tun:
Hoffe das hilft
Oisin.
(bearbeitet, um @@ rowcount durch rowcount zu ersetzen - danke augustlights)
quelle
In x0ns Beispiel sollte es sein:
http://msdn.microsoft.com/en-us/library/ms188774.aspx
quelle
Es ist auch möglich, dynamisches SQL zu verwenden und es mit dem Befehl exec auszuführen:
quelle
Oder Sie setzen die Variable einfach in Klammern
quelle
quelle