I SQL Server kan du använda ROWCOUNT_BIG()
systemfunktion för att returnera antalet rader som påverkas av den senaste T-SQL-satsen.
Det fungerar exakt på samma sätt som @@ROWCOUNT
, förutom att ROWCOUNT_BIG()
returnerar resultatet som en bigint .
Därför ROWCOUNT_BIG()
är mer lämpad för resultatuppsättningar som returnerar ett stort antal rader (2 miljarder eller mer).
Detta beror på att @@ROWCOUNT
returnerar resultatet som en int , som har en övre gräns på drygt 2 miljarder (2 147 483 647 för att vara exakt).
Utöver det kan den användas på exakt samma sätt som @@ROWCOUNT
. Så om du arbetar med seriöst stora resultatuppsättningar, använd ROWCOUNT_BIG()
istället för @@ROWCOUNT
.
Exempel
Här är ett exempel för att visa hur ROWCOUNT_BIG()
fungerar.
SELECT ArtistId, ArtistName
FROM Artists;
SELECT ROWCOUNT_BIG();
Resultat:
+------------+------------------------+ | ArtistId | ArtistName | |------------+------------------------| | 1 | Iron Maiden | | 2 | AC/DC | | 3 | Allan Holdsworth | | 4 | Buddy Rich | | 5 | Devin Townsend | | 6 | Jim Reeves | | 7 | Tom Jones | | 8 | Maroon 5 | | 9 | The Script | | 10 | Lit | | 11 | Black Sabbath | | 12 | Michael Learns to Rock | | 13 | Carabao | | 14 | Karnivool | | 15 | Birds of Tokyo | | 16 | Bodyjar | +------------+------------------------+ (16 rows affected) +--------------------+ | (No column name) | |--------------------| | 16 | +--------------------+ (1 row affected)