Database
 sql >> Baza danych >  >> RDS >> Database

Jak znaleźć maksymalne wartości w wierszach

Problem:

Chcesz dowiedzieć się, które wiersze przechowują największą wartość liczbową w danej kolumnie.

Przykład:

Nasza baza danych zawiera tabelę o nazwie student z danymi w następujących kolumnach:id , first_name , last_name i grade .

id imię nazwisko klasa
1 Lisa Jackson 3
2 Gary Larry 5
3 Tomek Michelin 2
4 Marcin Kerka 2
5 Elia Czarny 5
6 Maryi Simpson 4

Znajdźmy uczniów, którzy mają najwyższe oceny.

Rozwiązanie:

SELECT  id, first_name, last_name, grade
FROM student
WHERE grade = (SELECT MAX(grade) FROM student);

Oto wynik:

id imię nazwisko klasa
2 Gary Larry 5
5 Elia Czarny 5

Dyskusja:

Aby znaleźć maksymalną wartość kolumny, użyj MAX() funkcja zagregowana; aby znaleźć maksymalną wartość, wymagana jest nazwa kolumny lub wyrażenie. W naszym przykładzie podzapytanie zwraca najwyższą liczbę w ocenie kolumny (podzapytanie:SELECT MAX(grade) FROM student ). Główne zapytanie wyświetla identyfikator, imię i nazwisko oraz ich ocenę. Aby wyświetlić tylko wiersze z wartością maksymalną spośród wszystkich wartości w kolumnie (np. SELECT MAX(grade) FROM student ), użyj WHERE z podzapytaniem. W WHERE wpisz nazwę kolumny z wartością porównywalną do wartości zwracanej przez funkcję agregującą w podzapytaniu (w naszym przykładzie:WHERE grade = (SELECT MAX(grade) FROM student) ).


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wewnętrzne elementy Z SZYFROWANIEM

  2. Poziom izolacji SNAPSHOT

  3. Klauzula SQL HAVING dla początkujących

  4. Anatomia roli programisty:analityk danych

  5. Sekwencyjne prędkości i posuwy