Sammanfattning :i denna handledning kommer du att lära dig hur du använder SQLite MAX funktion för att få det maximala värdet av alla värden i en grupp.
Introduktion till SQLite MAX funktion
SQLite MAX funktion är en aggregerad funktion som returnerar det maximala värdet av alla värden i en grupp. Du kan använda MAX funktion för att åstadkomma många saker.
Du kan till exempel använda MAX funktion för att hitta de dyraste produkterna, hitta den största varan i sin grupp, etc.
Följande illustrerar den grundläggande syntaxen för MAX funktion.
MAX([ALL|DISTINCT] expression);Code language: SQL (Structured Query Language) (sql)
expression kan vara en kolumn i en tabell eller ett uttryck som består av operander, som är kolumnerna, och operatorer som +, *, etc.
Det finns några viktiga anmärkningar om MAX funktion:
- Först,
MAXfunktionen ignorerarNULLvärden. - För det andra, till skillnad från
COUNTfunktionen,DISTINCTklausulen är inte relevant förMAXfunktion. - För det tredje eftersom en kolumn kan lagra blandade typer av data, t.ex. heltal, reellt, text, blob och
NULLi SQLite, när man jämför värden för att hitta det maximala värdet,MAXfunktionen använder reglerna som nämns i datatypers handledning.
SQLite MAX funktionsexempel
Vi använder tracks tabell i exempeldatabasen för demonstrationen.
För att få det största spåret i byte använder du MAX funktion till bytes kolumn som följande uttalande:
SELECT MAX(bytes) FROM tracks;Code language: SQL (Structured Query Language) (sql) Prova det
SQLite MAX funktion i subquery-exemplet
För att få fullständig information om det största spåret använder du underfrågan enligt följande:
SELECT
TrackId,
Name,
Bytes
FROM
tracks
WHERE
Bytes = (SELECT MAX(Bytes) FROM tracks);Code language: SQL (Structured Query Language) (sql) Prova det
Först returnerar den inre frågan högsta byte av alla spår med MAX fungera. Sedan får den yttre frågan det största spåret vars storlek är lika med den största storleken som returneras av underfrågan.
SQLite MAX funktion och GROUP BY klausulexempel
Du kan hitta det största spåret i varje album med MAX funktion med GROUP BY-satsen.
Först, GROUP BY klausul grupperar spåren i grupper baserat på album. Sedan, MAX funktion returnerar de största spåren för varje grupp.
Se följande fråga:
SELECT
AlbumId,
MAX(bytes)
FROM
tracks
GROUP BY
AlbumId;Code language: SQL (Structured Query Language) (sql) Prova det
SQLite MAX funktion och HAVING klausul
Du kan kombinera MAX funktion med HAVING-satsen för att filtrera grupperna baserat på deras största värden.
Till exempel, för att hitta albumen och deras största spår där storlekarna på de största spåren är större än 6 MB (cirka ~ 6000000), använder du följande uttalande:
SELECT
albumid,
max(bytes)
FROM
tracks
GROUP BY
albumid
HAVING MAX(bytes) > 6000000;Code language: SQL (Structured Query Language) (sql) Prova det
I den här handledningen har du lärt dig hur du använder SQLite MAX funktion för att hitta det maximala värdet i en grupp av värden.