sql >> Database >  >> RDS >> Mysql

MySQL Selecteer rij met laagste waarde in kolom

Je moet eerst de minimumleeftijd per klas selecteren:

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

(Opmerking:ik neem aan dat je de minimumleeftijd per klas wilt. Als je de minimumleeftijd per naam wilt, vervang dan class met name in de zoekopdrachten ...)

Vervolgens moet u het resultaat samenvoegen met uw tabel om de respectieve rijen te krijgen. De volledige SQL zou zijn

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;

Zorg voor optimale prestaties dat age wordt zowel geïndexeerd als class (of name , wat je maar wilt in je group by uitdrukking).



  1. Waarom komen NULL-waarden eerst bij het bestellen van DESC in een PostgreSQL-query?

  2. Fout bij het converteren van XML van een CLOB-kolom naar XMLType-kolom

  3. ORA-01111 in MRP in fysieke standby-database

  4. CodeIgniter:SQL-controle van alle $this->db->query()-methodeaanroepen?