SQL Min og Max funksjoner

SQL Min og Max funksjoner
Enten du jobber med ANSI SQL eller andre SQL -smaker, er du sikker på å komme over Min () og Max () -funksjoner i samlede operasjoner. De er noen av de essensielle funksjonene for enkle oppgaver og komplekse aggregeringsoperasjoner. Denne artikkelen vil utforske hva hver funksjon gjør, den tilsvarende syntaks og praktiske eksempler på når du skal bruke disse funksjonene. Merk: Denne opplæringen vil illustrere hvordan du bruker disse funksjonene i ANSI SQL, også kjent som standard SQL. Imidlertid bør de utføre lignende handlinger selv i andre SQL -smaker.

SQL min () -funksjon

La oss starte med Min () -funksjonen. Denne funksjonen lar deg hente den minste verdien i et sett med gitte verdier. Du kan gi inngangsverdiene som en numerisk kolonne eller et resultat av et uttrykk som returnerer en numerisk verdi.

Min () -funksjonen er en samlet funksjon og returnerer en enkelt numerisk verdi fra en gitt inngang.

Funksjonssyntaksen kan uttrykkes som vist:

Min (uttrykk)

Funksjonen godtar et enkelt argument som et uttrykk eller et gitt kolonnesett.

Ta eksemplet nedenfor:

PLUKKE UT
Min (x) som minste
FRA
Unnest ([100, 102, 2, 233, 11, 12]) som X;

Å kjøre koden over skal returnere den minste verdien fra den gitte matrisen.

minste |
--------+
2 |

SQL MAX () Funksjoner

Som navnet antyder, lar Max () -funksjonen deg få det største antallet i et gitt sett med numeriske verdier. Tilsvarende kan du passere verdiene som en numerisk kolonne eller et resultat av et gitt uttrykk som returnerer en numerisk verdi.

Funksjonssyntaksen er som vist:

Maks (uttrykk)

Tenk på eksemplet nedenfor:

PLUKKE UT
Maks (x) som største
FRA
Unnest ([100, 102, 2, 233, 11, 12]) som X;

Koden over skal hente den største verdien fra den gitte matrisen. Et eksempelutgang er som vist:

største |
-------+
233 |

Eksempeldata

La oss bruke nøyaktige verdensdata best for å illustrere forskjellige bruksområder av Min- og Max -funksjonene. Ta eksempeldata vist nedenfor:

Opprette database local_db;
Bruk local_db;
Lag tabelldatabaser (
id int ikke null identitet (1,1) primærnøkkel,
Server_name varchar (50),
server_address varchar (255) ikke null,
kompresjon_metod varchar (100) standard 'ingen',
size_on_disk float ikke null,
Size_Compription Float,
total_records int ikke null
);
Sett inn i databaser (server_navn, server_adress, compression_method, size_on_disk, size_compressed, total_records)
Verdier ('mysql', 'localhost: 3306', 'lz77', 90.66, 40.04, 560000),
('Redis', 'Localhost: 6307', 'Snappy', 3.55, 998.2, 100000),
('PostgreSql', 'localhost: 5432', 'pglz', 101.2, 98.01, 340000),
('Elasticsearch', 'Localhost: 9200', 'LZ4', 333.2, 300.2, 1200000),
('Mongodb', 'Localhost: 27017', 'Snappy', 4.55, 4.10, 620000),
('Apache Cassandra', 'Localhost: 9042', 'Zstd', 300.3, 200.12, 10000000);
Velg * fra databaser;

Merk: Dataene ovenfor er rent fiktivt og representerer ikke faktiske databasefunksjoner eller kompresjonsforhold.

Utgangstabell:

Eksempel 1 - Bruke Min- og Max -funksjoner på enkeltkolonne

Vi kan bruke Min- og Max -funksjonene på en gitt tabellkolonne for å hente den minste og største verdien fra henholdsvis kolonnen.

For å få databasen med den minste størrelsen på disken, kan vi for eksempel kjøre spørringen som:

PLUKKE UT
Min (size_on_disk) som minste_størrelse
FRA
Databaser;

Spørringen over skal returnere den minste størrelsen fra kolonnen størrelse_on_disk, som vist i utgangen nedenfor:

minste_størrelse |
-------------+
3.55 |

For den største størrelsen, bruk MAX -funksjonen:

PLUKKE UT
Maks (size_on_disk) som største_størrelse
FRA
Databaser;

Resultat:

største_størrelse |
------------+
333.2 |

Eksempel 2 - Bruke Min- og Max -funksjoner med gruppe av

Vi kan også inkludere andre kolonner som bruker gruppen etter funksjon når vi jobber med en samlet funksjon.

For eksempel for å vise servernavnet:

PLUKKE UT
Maks (size_on_disk) som største_størrelse,
Server navn
FRA
Databaser
Gruppe etter servernavn;

Gruppen BY -klausulen er instrumental når du kategoriserer data i spesifikke partisjoner og finner et minimum eller maksimal verdi fra hver divisjon.

Eksempel 3 - Bruke Min og Max i samme spørring

Vi kan også bruke to samlede funksjoner i samme spørring, som vist i utgangen nedenfor:

PLUKKE UT
Maks (size_on_disk) som største_størrelse,
Min (size_on_disk) som minste_størrelse
FRA
Databaser;

Et eksempelutgang er som vist:

største_størrelse | minste_størrelse |
------------+-------------+
333.2 | 3.55 |

Eksempel 4 - å kombinere Min og Max fungerer med å ha klausulen

Eksemplet nedenfor viser hvordan du bruker Min og Max () -funksjonene for å filtrere resultater ved å bruke klausulen.

Velg server_navn, maks (total_records) som største
Fra Databases Group av Server_name som har MAX (Total_Records) = 100000;

Resulterende utgang:

Server_name | Største |
-----------+-------+
Redis | 100000 |

Lukking

I dette innlegget undersøkte vi mye hvordan vi bruker Min og Max () -funksjonene i SQL. Vi diskuterte også praktiske eksempler på å bruke disse to funksjonene i applikasjonene dine.