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í SET ROWCOUNT neovlivní příkazy DELETE, INSERT a UPDATE v budoucích verzích SQL Serveru. Vyhněte se používání SET ROWCOUNT s příkazy DELETE, INSERT a UPDATE v nové vývojové práci a plánujte upravovat aplikace, které jej 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 možnosti tak, aby se všechny řádky vracely, zadejte NASTAVIT POČET ŘÁDKŮ 0.
Nastavení volby SET ROWCOUNT způsobí, že většina Transact-SQL příkazů přestane zpracovávat, když jsou ovlivněny daným počtem řádků. To zahrnuje i spouštěče. Volba ROWCOUNT neovlivňuje dynamické kurzory, ale omezuje počet řá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 TOP, pokud je počet řádků menší.
Nastavení SET ROWCOUNT se nastavuje při spuštění nebo běhu a ne při parse.
Povolení
Vyžaduje členství ve veřejné roli.
Examples
SET ROWCOUNT ukončí zpracování 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 ROWCOUNT však vidíte, ž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 ukončí zpracování 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 ROWCOUNT však vidíte, ž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';