Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да ограничим резултатите в MySQL, PostgreSQL и SQLite

Проблем:

Искате да ограничите броя на редовете в резултат на заявка в MySQL, PostgreSQL или SQLite.

Пример:

В exam таблица, има имена на студентите с резултатите от изпита.

name резултат_изпит
Джанет Морген 9
Тая Бейн 11
Ан Джонсън 11
Джош Каур 10
Елън Торнтън 8

Искате да получите трите реда с най-добри резултати от изпита.

Решение:

SELECT *
FROM exam
ORDER BY exam_result DESC
LIMIT 3;

Резултатът от заявката изглежда така:

name резултат_изпит
Тая Бейн 11
Ан Джонсън 11
Джош Каур 10

Дискусия:

Първо, сортирайте редовете по exam_result колона в низходящ ред с помощта на ORDER BY клауза и DESC ключова дума. След това след ORDER BY клауза, използвайте LIMIT ключова дума с определен брой редове, които искате да върнете (тук, 3 ).

ORDER BY exam_result DESC
LIMIT 3

Ако искате да извлечете три реда на случаен принцип вместо най-добрите три, пропуснете ORDER BY част.

SELECT *
FROM exam
LIMIT 3;

Разбира се, можете да извлечете произволен брой редове. Просто заменете 3 с желания от вас номер.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. използвайки (-) тире в името на таблицата на mysql

  2. Как да използвам каскада за изтриване в mysql?

  3. Заявка за обобщена таблица на MySQL с динамични колони

  4. Какво е схема на база данни?

  5. Как да конвертирате времето в часовата зона на iPhone устройството?