Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

SQL-Server ROWCOUNT_BIG()

In SQL Server können Sie ROWCOUNT_BIG() verwenden Systemfunktion, um die Anzahl der von der letzten T-SQL-Anweisung betroffenen Zeilen zurückzugeben.

Es funktioniert genauso wie @@ROWCOUNT , außer dass ROWCOUNT_BIG() gibt sein Ergebnis als bigint zurück .

Daher ROWCOUNT_BIG() eignet sich besser für Ergebnismengen, die eine große Anzahl von Zeilen zurückgeben (2 Milliarden oder mehr).

Das liegt daran, dass @@ROWCOUNT gibt sein Ergebnis als int zurück , die eine Obergrenze von knapp über 2 Milliarden hat (2.147.483.647 um genau zu sein).

Ansonsten kann es genauso verwendet werden wie @@ROWCOUNT . Wenn Sie also mit sehr großen Ergebnismengen arbeiten, verwenden Sie ROWCOUNT_BIG() statt @@ROWCOUNT .

Beispiel

Hier ist ein Beispiel, um zu demonstrieren, wie ROWCOUNT_BIG() funktioniert.

SELECT ArtistId, ArtistName 
FROM Artists;
SELECT ROWCOUNT_BIG();

Ergebnis:

+------------+------------------------+
| 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)