sql >> Databáze >  >> RDS >> SQLite

SQLite MAX

Shrnutí :v tomto tutoriálu se naučíte používat SQLite MAX funkce k získání maximální hodnoty všech hodnot ve skupině.

Úvod do SQLite MAX funkce

SQLite MAX funkce je agregační funkce, která vrací maximální hodnotu všech hodnot ve skupině. Můžete použít MAX funkce k dosažení mnoha věcí.

Můžete například použít MAX funkce najít nejdražší produkty, najít největší položku ve své skupině atd.

Následující text ilustruje základní syntaxi MAX funkce.

MAX([ALL|DISTINCT] expression);Code language: SQL (Structured Query Language) (sql)

expression může být sloupec tabulky nebo výraz, který se skládá z operandů, což jsou sloupce, a operátorů jako +, * atd.

Existuje několik důležitých poznámek o MAX funkce:

  • Za prvé, MAX funkce ignoruje NULL hodnoty.
  • Za druhé, na rozdíl od COUNT funkce DISTINCT klauzule není relevantní pro MAX funkce.
  • Za třetí, protože sloupec může ukládat různé typy dat, např. celé číslo, reálné číslo, text, blob a NULL v SQLite při porovnávání hodnot k nalezení maximální hodnoty MAX funkce používá pravidla uvedená v tutoriálu o datových typech.

SQLite MAX příklady funkcí

Použijeme tracks tabulky ve vzorové databázi pro ukázku.

Chcete-li získat největší stopu v bajtech, použijte MAX funkce do bytes sloupec jako následující příkaz:

SELECT MAX(bytes) FROM tracks;Code language: SQL (Structured Query Language) (sql)

Zkuste to

SQLite MAX funkce v příkladu poddotazu

Chcete-li získat úplné informace o největší skladbě, použijte dílčí dotaz takto:

SELECT
	TrackId,
	Name,
	Bytes
FROM
	tracks
WHERE
	Bytes = (SELECT MAX(Bytes) FROM tracks);Code language: SQL (Structured Query Language) (sql)

Zkuste to

Nejprve vnitřní dotaz vrátí nejvyšší bajty ze všech stop pomocí MAX funkce. Potom vnější dotaz získá největší stopu, jejíž velikost se rovná největší velikosti vrácené dílčím dotazem.

SQLite MAX funkce a GROUP BY příklad klauzule

Největší skladbu v každém albu můžete najít pomocí MAX funkce s klauzulí GROUP BY.

Nejprve GROUP BY klauzule seskupuje skladby do skupin podle alb. Poté MAX Funkce vrací největší skladby pro každou skupinu.

Viz následující dotaz:

SELECT
	AlbumId,
	MAX(bytes)
FROM
	tracks
GROUP BY
	AlbumId;Code language: SQL (Structured Query Language) (sql)

Zkuste to

SQLite MAX funkce a HAVING klauzule

Můžete kombinovat MAX funkce s klauzulí HAVING k filtrování skupin na základě jejich největších hodnot.

Chcete-li například najít alba a jejich největší skladbu, kde jsou velikosti největších skladeb větší než 6 MB (asi ~ 6000000), použijte následující příkaz:

SELECT
	albumid,
	max(bytes)
FROM
	tracks
GROUP BY
	albumid
HAVING MAX(bytes) > 6000000;Code language: SQL (Structured Query Language) (sql)

Zkuste to

V tomto tutoriálu jste se naučili používat SQLite MAX funkce k nalezení maximální hodnoty ve skupině hodnot.


  1. Sledujte tabulku nových záznamů v databázi SQL

  2. Dotaz k odstranění jedinečného nebo primárního klíče z tabulky MYsql

  3. Je možné vytvořit rekurzivní SQL dotaz?

  4. Jak získat velikost databáze MySQL?