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,
MAX
funktionen ignorerarNULL
värden. - För det andra, till skillnad från
COUNT
funktionen,DISTINCT
klausulen är inte relevant förMAX
funktion. - För det tredje eftersom en kolumn kan lagra blandade typer av data, t.ex. heltal, reellt, text, blob och
NULL
i SQLite, när man jämför värden för att hitta det maximala värdet,MAX
funktionen 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.