Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL Database w Microsoft Fabric
Powoduje, że SQL Server przestaje przetwarzać zapytanie po otrzymaniu określonej liczby wierszy.
Transact-SQL konwencje składni
Składnia
SET ROWCOUNT { number | @number_var }
Arguments
liczba | @number_var
To liczba, czyli liczba całkowita, wierszy do przetworzenia przed zatrzymaniem konkretnego zapytania.
Uwagi
Ważne
Użycie SET ROWCOUNT nie wpłynie na instrukcje DELETE, INSERT i UPDATE w przyszłych wersjach SQL Servera. Unikaj używania SET ROWCOUNT z instrukcjami DELETE, INSERT i UPDATE w nowych projektach deweloperskich i planuj modyfikację aplikacji, które już z tego korzystają. Dla podobnego zachowania użyj składni TOP. Aby uzyskać więcej informacji, zobacz TOP (Transact-SQL).
Aby wyłączyć tę opcję i zwrócić wszystkie wiersze, określ USTAW LICZBĘ WIERSZY 0.
Ustawienie opcji SET ROWCOUNT powoduje, że większość Transact-SQL instrukcji przestaje być przetwarzana, gdy zostaną dotknięte określoną liczbą wierszy. Dotyczy to także czynników wyzwalających. Opcja ROWCOUNT nie wpływa na dynamiczne kursory, ale ogranicza zestaw wierszy zestawu kluczy i nieczułych kursorów. Tę opcję należy stosować ostrożnie.
SET ROWCOUNT nadpisuje słowo kluczowe SELECT TOP, jeśli liczba wierszy jest mniejsza.
Ustawienie SET ROWCOUNT jest ustawiane w czasie wykonania lub działania, a nie w czasie parsowania.
Permissions
Wymaga członkostwa w roli publicznej.
Przykłady
USTAW LICZBĘ wierszy kończy przetwarzanie po określonej liczbie wierszy. W poniższym przykładzie należy zauważyć, że ponad 500 wierszy spełnia kryteria Quantity mniejsze niż 300. Jednak po zastosowaniu USTAW LICZNIK WIERSZY widać, że nie wszystkie wiersze zostały zwrócone.
USE AdventureWorks2022;
GO
SELECT count(*) AS Count
FROM Production.ProductInventory
WHERE Quantity < 300;
GO
Oto zestaw wyników.
Count
-----------
537
(1 row(s) affected)
Teraz ustaw ROWCOUNT na i 4 zwróć wszystkie wiersze, aby pokazać, że zwracane są tylko 4 wiersze.
SET ROWCOUNT 4;
SELECT *
FROM Production.ProductInventory
WHERE Quantity < 300;
GO
-- (4 row(s) affected)
Przykłady: Azure Synapse Analytics and Analytics Platform System (PDW)
USTAW LICZBĘ wierszy kończy przetwarzanie po określonej liczbie wierszy. W następnym przykładzie należy zauważyć, że ponad 20 wierszy spełnia kryteria .AccountType = 'Assets' Jednak po zastosowaniu USTAW LICZNIK WIERSZY widać, że nie wszystkie wiersze zostały zwrócone.
-- Uses AdventureWorks
SET ROWCOUNT 5;
SELECT * FROM [dbo].[DimAccount]
WHERE AccountType = 'Assets';
Aby zwrócić wszystkie wiersze, ustaw ROWCOUNT na 0.
-- Uses AdventureWorks
SET ROWCOUNT 0;
SELECT * FROM [dbo].[DimAccount]
WHERE AccountType = 'Assets';