Samenvatting :in deze tutorial leer je hoe je SQLite MAX . gebruikt functie om de maximale waarde van alle waarden in een groep te krijgen.
Inleiding tot SQLite MAX functie
De SQLite MAX functie is een aggregatiefunctie die de maximale waarde van alle waarden in een groep retourneert. U kunt de MAX . gebruiken functie om veel dingen te bereiken.
U kunt bijvoorbeeld de MAX . gebruiken functie om de duurste producten te vinden, het grootste item in zijn groep te vinden, enz.
Het volgende illustreert de basissyntaxis van de MAX functie.
MAX([ALL|DISTINCT] expression);Code language: SQL (Structured Query Language) (sql)
De expression kan een kolom van een tabel zijn of een uitdrukking die bestaat uit operanden, dit zijn de kolommen, en operators zoals +, *, enz.
Er zijn enkele belangrijke opmerkingen over MAX functie:
- Eerst, de
MAXfunctie negeertNULLwaarden. - Ten tweede, in tegenstelling tot de
COUNTfunctie, deDISTINCTclausule is niet relevant voor deMAXfunctie. - Ten derde, omdat een kolom gemengde soorten gegevens kan opslaan, bijvoorbeeld integer, real, text, blob en
NULLin SQLite, bij het vergelijken van waarden om de maximale waarde te vinden, deMAXfunctie gebruikt de regels die worden genoemd in de zelfstudie over gegevenstypen.
De SQLite MAX functievoorbeelden
We gebruiken de tracks tabel in de voorbeelddatabase voor de demonstratie.
Om de grootste track in bytes te krijgen, past u de MAX . toe functie naar de bytes kolom als de volgende verklaring:
SELECT MAX(bytes) FROM tracks;Code language: SQL (Structured Query Language) (sql) Probeer het
SQLite MAX functie in het subquery-voorbeeld
Om de volledige informatie van de grootste track te krijgen, gebruik je de subquery als volgt:
SELECT
TrackId,
Name,
Bytes
FROM
tracks
WHERE
Bytes = (SELECT MAX(Bytes) FROM tracks);Code language: SQL (Structured Query Language) (sql) Probeer het
Ten eerste retourneert de inner query de hoogste bytes van alle tracks met behulp van de MAX functie. Vervolgens krijgt de buitenste zoekopdracht de grootste track waarvan de grootte gelijk is aan de grootste die door de subquery wordt geretourneerd.
SQLite MAX functie en GROUP BY clausule voorbeeld
Je kunt de grootste track in elk album vinden met behulp van de MAX functie met de GROUP BY-clausule.
Eerst de GROUP BY clausule groepeert de nummers in groepen op basis van albums. Dan, de MAX functie retourneert de grootste tracks voor elke groep.
Zie de volgende vraag:
SELECT
AlbumId,
MAX(bytes)
FROM
tracks
GROUP BY
AlbumId;Code language: SQL (Structured Query Language) (sql) Probeer het
SQLite MAX functie en HAVING clausule
U kunt de MAX . combineren functie met de HAVING-component om de groepen te filteren op basis van hun grootste waarden.
Om bijvoorbeeld de albums en hun grootste track te vinden waarvan de grootte van de grootste tracks groter is dan 6 MB (ongeveer ~ 6000000), gebruikt u de volgende verklaring:
SELECT
albumid,
max(bytes)
FROM
tracks
GROUP BY
albumid
HAVING MAX(bytes) > 6000000;Code language: SQL (Structured Query Language) (sql) Probeer het
In deze tutorial heb je geleerd hoe je de SQLite MAX . gebruikt functie om de maximale waarde in een groep waarden te vinden.