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

MySQL:Вземете n-та най-висока стойност за всяка група в таблица

Надявам се, че има по-добър начин, но можете да го получите чрез пресичане или неизпълнение на две подзаявки:

Select mytable.Store, mytable.Dept, mytable.Order, mytable.Amount
from mytable m
inner join 
  (Select Amount from mytable n where m.store = n.store and m.dept = n.dept order by Amount desc limit 2) as high_enough
  on mytable.Amount = high_enough.Amount
left join 
   (Select Amount from mytable n where m.store = n.store and m.dept = n.dept order by Amount desc limit 2) as too_high
  where too_high.Amount is null
group by Store, Dept;



  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. hive.HiveImport:FAILED:SemanticException [Грешка 10072]:База данни не съществува:

  4. Изчисляване на разстоянието Haversine между две точки в Laravel

  5. MySQL-Cluster не успява да се стартира