Trong SQL Server, bạn có thể sử dụng ROWCOUNT_BIG()
hàm hệ thống để trả về số hàng bị ảnh hưởng bởi câu lệnh T-SQL cuối cùng.
Nó hoạt động giống hệt như @@ROWCOUNT
, ngoại trừ ROWCOUNT_BIG()
trả về kết quả của nó dưới dạng bigint .
Do đó, ROWCOUNT_BIG()
phù hợp hơn với các tập hợp kết quả trả về một số lượng lớn hàng (2 tỷ hoặc nhiều hơn).
Điều này là do @@ROWCOUNT
trả về kết quả của nó dưới dạng int , có giới hạn trên chỉ hơn 2 tỷ (chính xác là 2.147.483.647).
Ngoài ra, nó có thể được sử dụng theo cách giống hệt như @@ROWCOUNT
. Vì vậy, nếu bạn đang làm việc với các tập kết quả lớn nghiêm túc, hãy sử dụng ROWCOUNT_BIG()
thay vì @@ROWCOUNT
.
Ví dụ
Dưới đây là một ví dụ để minh họa cách thức ROWCOUNT_BIG()
hoạt động.
SELECT ArtistId, ArtistName
FROM Artists;
SELECT ROWCOUNT_BIG();
Kết quả:
+------------+------------------------+ | 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)