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

MySQL Изберете ред с най-ниска стойност в колоната

Първо трябва да изберете минималната възраст за клас:

select min(age) as age, class as class from t group by class

(Забележка:Предполагам, че искате минималната възраст за клас. Искате минималната възраст за име, след което заменете class с name в заявките ...)

След това трябва да обедините резултата с вашата таблица, за да получите съответните редове. Пълният SQL би бил

select t.* from t 
inner join
( 
  select min(age) as age, class as class from t group by class
) min_ages on t.age = min_ages.age and t.class = min_ages.class;

За оптимална производителност се уверете, че age е индексиран, както и class (или name , което искате във вашата group by израз).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Кога да използвате MongoDB

  2. Как да попълня рационална MySQL база данни с много таблици от съществуваща база данни с една таблица?

  3. избиране на уникални стойности от колона

  4. Разбиране на естественото присъединяване в SQL

  5. Разделяне на резултатите от PHP заявка в колони