Jak działa MAX w języku SQL? Przykłady zastosowania

Jak działa MAX w języku SQL? Przykłady zastosowania

Funkcja MAX() w SQL to jedno z najczęściej używanych narzędzi analizy danych. Pozwala ona znaleźć największą wartość w danej kolumnie, co jest niezwykle przydatne w różnych scenariuszach, takich jak wyszukiwanie najwyższych cen, maksymalnych wynagrodzeń czy ostatnich dat zamówień.

Jak działa MAX w języku SQL?

Funkcja MAX() działa na danych liczbowych oraz na innych typach danych, takich jak daty czy teksty. Wykorzystuje się ją w zapytaniach SQL do agregacji danych i znajdowania największej wartości w danym zbiorze.

Podstawowa składnia funkcji wygląda tak:

SELECT MAX(kolumna) FROM tabela;

Funkcja MAX() zwraca największą wartość spośród wszystkich w danej kolumnie. Można jej używać w połączeniu z GROUP BY, aby uzyskać maksymalne wartości dla poszczególnych grup danych.

Przykłady zastosowania funkcji MAX

Najlepiej zrozumieć działanie funkcji MAX() na konkretnych przykładach. Poniżej kilka sytuacji, w których może się przydać.

1. Znalezienie najwyższej ceny produktu

SELECT MAX(cena) AS najwyzsza_cena FROM produkty;

Powyższe zapytanie zwróci najwyższą cenę spośród wszystkich produktów w tabeli produkty.

2. Największa wartość w każdej grupie – użycie GROUP BY

SELECT kategoria, MAX(cena) AS najwyzsza_cena 
FROM produkty 
GROUP BY kategoria;

To zapytanie zwraca najwyższą cenę dla każdej kategorii produktów.

3. Ostatnie zamówienie klienta

SELECT MAX(data_zamowienia) AS ostatnie_zamowienie 
FROM zamowienia 
WHERE id_klienta = 5;

Tutaj znajdujemy datę ostatniego zamówienia klienta o ID 5.

Jak działa MAX w SQL na różnych typach danych?

Funkcja MAX() działa nie tylko na liczbach, ale również na innych typach danych.

  • Typ numeryczny: Znajduje największą liczbę.
  • Typ daty: Zwraca najpóźniejszą datę.
  • Typ tekstowy: Wartość porównywana jest alfabetycznie (znajduje „największy” ciąg znaków).

MAX w połączeniu z innymi funkcjami

Funkcję MAX() można łączyć z innymi funkcjami SQL, np. JOIN, SUBQUERY czy HAVING.

1. Najlepiej opłacany pracownik w firmie

SELECT * FROM pracownicy 
WHERE pensja = (SELECT MAX(pensja) FROM pracownicy);

Tutaj zwrócone zostaną wszystkie dane pracownika z największą pensją.

2. Filtrowanie wyników za pomocą HAVING

SELECT kategoria, MAX(cena) AS najwyzsza_cena 
FROM produkty 
GROUP BY kategoria 
HAVING MAX(cena) > 100;

To zapytanie znajdzie tylko te kategorie, w których jest produkt kosztujący więcej niż 100.

Przykładowa tabela i wyniki działania MAX

Poniższa tabela przedstawia przykładowe dane:

ID Produkt Kategoria Cena
1 Telefon Elektronika 1500
2 Laptop Elektronika 3000
3 Klawiatura Akcesoria 200

Ponieważ laptop jest najdroższym produktem w kategorii „Elektronika”, to w wyniku zapytania:

SELECT kategoria, MAX(cena) FROM produkty GROUP BY kategoria;

otrzymamy:

Kategoria Najwyższa Cena
Elektronika 3000
Akcesoria 200

Podsumowanie

Funkcja MAX() w SQL to bardzo przydatne narzędzie do analizy danych. Możemy jej używać do znajdowania najwyższych wartości w prostych i bardziej złożonych zapytaniach. Działa na liczbach, datach oraz tekstach, a jej możliwości rozszerzają się wraz z wykorzystaniem innych funkcji SQL.

 

Inny ciekawy artykuł:

Jak działa MIN w języku SQL? Przykłady zastosowania

KajoDataSpace