sql >> Databáze >  >> RDS >> Sqlserver

Jak zahrnout celkový počet vrácených řádků do sady výsledků z příkazu SELECT T-SQL?

V SQL Server 2008 a novějších přidejte COUNT(*) OVER () jako jeden z názvů sloupců ve vašem dotazu a ten bude naplněn celkovým počtem vrácených řádků.

Opakuje se v každém jednotlivém řádku, ale k dispozici je alespoň hodnota.

Důvodem, proč mnoho jiných řešení nefunguje, je to, že u velmi rozsáhlých sad výsledků nebudete znát součet, dokud neopakujete všechny řádky, což v mnoha případech není praktické (zejména řešení sekvenčního zpracování). Tato technika vám poskytne celkový počet po volání prvního IDataReader.Read() , například.

select COUNT(*) OVER () as Total_Rows, ... from ...


  1. Jak získat hodnotu ASCII v Oracle?

  2. Duplikování řádků na základě hodnoty sloupce v každém řádku

  3. cd:-M:neplatná volba

  4. Jak nainstalovat SSMS