Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak ograniczyć wyniki w MySQL, PostgreSQL i SQLite?

Problem:

Chcesz ograniczyć liczbę wierszy wynikających z zapytania w MySQL, PostgreSQL lub SQLite.

Przykład:

Na exam w tabeli znajdują się nazwiska uczniów z wynikami egzaminu.

nazwa exam_result
Janet Morgen 9
Taya Bain 11
Anna Johnson 11
Josh Kaur 10
Ellen Thornton 8

Chcesz uzyskać trzy wiersze z najlepszymi wynikami egzaminu.

Rozwiązanie:

SELECT *
FROM exam
ORDER BY exam_result DESC
LIMIT 3;

Wynik zapytania wygląda tak:

nazwa exam_result
Taya Bain 11
Anna Johnson 11
Josh Kaur 10

Dyskusja:

Najpierw posortuj wiersze według exam_result kolumna w kolejności malejącej przy użyciu ORDER BY klauzula i DESC słowo kluczowe. Następnie po ORDER BY klauzula, użyj LIMIT słowo kluczowe z liczbą wierszy, które chcesz zwrócić (tutaj 3 ).

ORDER BY exam_result DESC
LIMIT 3

Jeśli chcesz pobrać losowo trzy wiersze zamiast trzech najlepszych, pomiń ORDER BY część.

SELECT *
FROM exam
LIMIT 3;

Oczywiście możesz pobrać dowolną liczbę wierszy. Wystarczy wymienić 3 z wybranym numerem.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak mogę odszyfrować skrót hasła w PHP?

  2. Wyszukaj tekst w polach w każdej tabeli bazy danych MySQL

  3. Lokalny host MySQL !=127.0.0.1?

  4. MySQL Wybierz pierwsze N ​​wierszy

  5. CONVERT_TZ() Przykłady – MySQL