Funkce SQL COUNT ()

Poslední aktualizace 26. února 2020 08:07:42 (UTC / GMT +8 hodin)

Funkce COUNT ()

Funkce SQL COUNT () vrací počet řádků v tabulce splňujících kritéria uvedené v klauzuli WHERE. Nastavuje počet řádků nebo hodnoty sloupců, které nemají hodnotu NULL.
COUNT () vrací 0, pokud neexistují žádné odpovídající řádky.

Syntaxe:

COUNT(*)COUNT( expression )

Výše uvedená syntaxe je obecná standardní syntaxe ANSI pro SQL 2003. To pomáhá pochopit způsob použití funkce SQL COUNT (). Ale různí prodejci databází mohou mít různé způsoby použití funkce COUNT ().

Níže je vidět, že MySQL, PostgreSQL a Microsoft SQL Server dodržují stejnou syntaxi, jak je uvedeno výše. Ale DB2 a Oracle se mírně liší.

Celkově můžete použít * nebo ALL nebo DISTINCT nebo nějaký výraz spolu s COUNT až COUNT počtem řádků w.r.t. nějaká podmínka nebo všechny řádky, v závislosti na argumentech, které používáte spolu s funkcí COUNT ().

Podpora DBMS: funkce COUNT ()

DBMS příkaz
MySQL podporováno
PostgreSQL podporováno
SQL Server podporováno
Oracle Podporováno

Syntaxe DB2 a Oracle:

COUNT ({*| expression}) OVER (window_clause)

Parametry:

Název Popis
VŠE Platí pro všechny hodnoty. ALL vrátí počet hodnot, které nemají hodnotu NULL.
DISTINCT Ignorované duplicitní hodnoty a COUNT vrátí počet jedinečných nenulových hodnot.
výraz Výraz tvořený jedinou konstantou, proměnnou, skalární funkcí nebo názvem sloupce a může to být také část dotazu SQL, která porovnává hodnoty s jinými hodnotami. Výraz jakéhokoli typu kromě textu nebo obrázku. Agregační funkce a poddotazy nejsou povoleny.
* POČÍTÁ všechny řádky v cílové tabulce bez ohledu na to, zda obsahují NULL.

Syntaxový diagram – funkce COUNT ()

Na následujících stránkách jsme diskutovali o tom, jak použít COUNT () s různými klauzulemi SQL. Pro tyto aplikace jsme použili Oracle 10g Express Edition.

Důležitá věc týkající se funkce COUNT ():

Když se pro COUNT () použije *, všechny záznamy (řádky) jsou POČÍTÁNY, pokud nějaký obsah NULL, ale COUNT (název_sloupce) nepočítá záznam, pokud je jeho pole NULL. Podívejte se na následující příklady:

Řádky SQL COUNT v tabulce

V následujícím příkladu se používá znak hvězdičky (*) následovaný znakem SQL COUNT (), který označuje všechny řádky tabulky, i když existuje nějaká hodnota NULL.

Ukázková tabulka: objednávky

Chcete-li získat počet řádků v tabulce „objednávky“ , lze použít následující příkaz SQL:

Kód SQL:

Výstup:

 COUNT(*)--------- 34

Obrázková prezentace:

Vyberte COUNT (*) z více tabulek

Následující dotaz COUNT počet řádků ze dvou různých tabulek (zde používáme zaměstnance a oddělení) pomocí příkazu COUNT (*).

Kód SQL:

Výstup:

TOTAL_EMPLOYEES NO_OF_DEPARTMENTS--------------- ----------------- 107 27

SQL COUNT () s názvem sloupce

V tomto příkladu funkce SQL COUNT () vylučuje hodnoty NULL pro konkrétní sloupec, pokud je sloupec zadán jako argument v závorkách funkce COUNT ní.

Ukázková tabulka: listofitem

Chcete-li získat počet řádků v tabulce „listofitem“ s následující podmínkou –

1. COUNT počet řádků pro sloupec „coname“

lze použít následující příkaz SQL:

Kód SQL:

Výstup:

COUNT(CONAME)------------- 2

Vysvětlení:

Výše uvedený příkaz POČÍTÁ řádky pro sloupec „coname“, které nemají NULL .

Řádky SQL COUNT s uživatelem definovaným nadpisem sloupce

Chcete-li získat počet řádků v tabulce „objednávky“ s následující podmínkou –

1. výsledek musí být zobrazen s nadpisem „Počet řádků“,

lze použít následující příkaz SQL:

Kód SQL:

Výstup:

Number of Rows-------------- 36

SQL COUNT () s klauzulí kde

Klauzuli WHERE lze použít spolu s Funkce SQL COUNT () pro výběr konkrétních záznamů z tabulky proti dané podmínce.

Příklad:

Ukázková tabulka: objednávky

Chcete-li získat počet řádků v tabulce „objednávky“ s následující podmínkou –

1.ord_amount oproti objednávce je více než 1500,

lze použít následující příkaz SQL:

Výstup:

Number of Rows-------------- 22

Použití funkce COUNT ()

Na následujících stránkách jsme probrali, jak použít COUNT () s různými klauzulemi SQL. Pro tyto aplikace jsme použili Oracle 10g Express Edition.

Stránka COUNT s DISTINCT popisuje, jak použít funkci COUNT s DISTINCT, a také popisuje, jak použít funkci COUNT s klauzulí ALL. Na rozdíl od použití *, když je použito ALL, nejsou vybrány hodnoty NULL.

Stránka COUNT HAVING pojednává o tom, jak použít funkci COUNT s klauzulí HAVING a HAVING a GROUP BY.

COUNT s GROUP Stránka BY popisuje, jak použít funkci COUNT sGROUP BY ve vzestupném a sestupném pořadí.

Poznámka: Výstupy zde uvedeného příkazu SQL jsou převzaty pomocí Oracle Database 10g Express Edition

Zde je prezentace všech agregačních funkcí.

Cvičení cvičení SQL

  • Cvičení SQL, cvičení, řešení
  • Načítání dat SQL z tabulek
  • Logické a relační operátory SQL
  • Zástupné znaky SQL a speciální operátory
  • Agregační funkce SQL
  • Výstup dotazu formátování SQL
  • Dotazování SQL na více tabulkách
  • FILTROVÁNÍ a TŘÍDĚNÍ v HR databázi
  • SQL JOINS
    • SQL JOINS
    • SQL JOINS on HR databáze
  • SQL SUBQUERIES
    • SQL SUBQUERIES
    • SQL SU BQUERIES on HR Database
  • SQL Union
  • SQL View
  • Správa uživatelských účtů SQL
  • Databáze filmů
    • ZÁKLADNÍ dotazy v databázi filmů
    • SUBQUERIES v databázi filmů
    • PŘIPOJENÍ v databázi filmů
  • databáze fotbalu
    • Úvod
    • ZÁKLADNÍ dotazy v databázi fotbalu
    • SUBQUERIES v databázi fotbalu
    • PŘIPOJTE se v databázi fotbalu
  • Nemocniční databáze
    • Úvod
    • ZÁKLADNÍ, PODKLADY a PŘIPOJENÍ
  • Databáze zaměstnanců
    • ZÁKLADNÍ dotazy na databázi zaměstnanců
    • SUBQUERIES na databázi zaměstnanců
  • Další!

Leave a Reply

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *