Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
databáze SQL v Microsoft Fabric
Způsobí, že SQL Server přestane zpracovávat dotaz po zadání požadovaného počtu řádků.
Syntaxe
SET ROWCOUNT { number | @number_var }
Arguments
číslo | @number_var
Je číslo, celé číslo, řádků, které je třeba zpracovat před zastavením konkrétního dotazu.
Poznámky
Důležité
Použití SETSET ROWCOUNT , INSERT, a příkazů UPDATE v budoucím vydání SQL Server neovlivníDELETE. Vyhněte se používání SETSET ROWCOUNT s DELETE, INSERT, a příkazy UPDATE v nové vývojové práci a plánujte upravovat aplikace, které je aktuálně používají. Pro podobné chování použijte syntaxi TOP. Další informace naleznete v tématu TOP (Transact-SQL).
Pro nastavení této volby, aby se vrátily všechny řádky, zadejte SET ROWCOUNT 0.
Nastavení SET ROWCOUNT této možnosti způsobí, že většina Transact-SQL příkazů přestane zpracovávat, když jsou ovlivněny stanoveným počtem řádků. To zahrnuje i spouštěče. Tato ROWCOUNT možnost neovlivňuje dynamické kurzory, ale omezuje sadu řádků klíčových sad a necitlivých kurzorů. Tuto možnost je třeba používat opatrně.
SET ROWCOUNT přepisuje klíčové slovo SELECT příkazu TOP, pokud je počet řádků menší.
Nastavení je SET ROWCOUNT nastaveno při spuštění nebo běhu a ne při parse.
Povolení
Vyžaduje členství ve veřejné roli.
Examples
SET ROWCOUNT přestane zpracovávat po stanoveném počtu řádků. V následujícím příkladu si všimněte, že více než 500 řádků splňuje kritéria menší než Quantity300. Po aplikaci SET ROWCOUNTvšak můžete vidět, že ne všechny řádky byly vráceny.
USE AdventureWorks2022;
GO
SELECT count(*) AS Count
FROM Production.ProductInventory
WHERE Quantity < 300;
GO
Tady je soubor výsledků.
Count
-----------
537
(1 row(s) affected)
Nyní nastavte ROWCOUNT na a 4 vraťte všechny řádky, abyste ukázali, že jsou vráceny pouze 4 řádky.
SET ROWCOUNT 4;
SELECT *
FROM Production.ProductInventory
WHERE Quantity < 300;
GO
-- (4 row(s) affected)
Příklady: Azure Synapse Analytics a Analytický platformový systém (PDW)
SET ROWCOUNT přestane zpracovávat po stanoveném počtu řádků. V následujícím příkladu si všimněte, že více než 20 řádků splňuje kritéria .AccountType = 'Assets' Po aplikaci SET ROWCOUNTvšak můžete vidět, že ne všechny řádky byly vráceny.
-- Uses AdventureWorks
SET ROWCOUNT 5;
SELECT * FROM [dbo].[DimAccount]
WHERE AccountType = 'Assets';
Pro vrácení všech řádků nastavte ROWCOUNT na 0.
-- Uses AdventureWorks
SET ROWCOUNT 0;
SELECT * FROM [dbo].[DimAccount]
WHERE AccountType = 'Assets';