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

limit mysql w grupie?

Celem funkcji agregującej (i wymaganej przez nią funkcji GROUP BY) jest przekształcenie wielu wierszy w jeden. Więc jeśli naprawdę chcesz tylko 5 najlepszych kont oszczędnościowych, 5 najlepszych kont czekowych i 5 najlepszych kont w USD itp., potrzebujesz bardziej tego:

kryteria:top 5 danego typu konta według salda_konta

SELECT account_type, account_balance FROM accounts WHERE account_type='savings' 
   ORDER BY account_balance DESC LIMIT 5
UNION
SELECT account_type, account_balance FROM accounts WHERE account_type='chequing' 
   ORDER BY account_balance DESC LIMIT 5
UNION
SELECT account_type, account_balance FROM accounts WHERE account_type='USD' 
   ORDER BY account_balance DESC LIMIT 5;

Nie jest to ładne, ale jeśli zbudujesz kod SQL za pomocą skryptu, dopisanie do atrybutów account_types i połączenie ze sobą zapytania jest proste.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Usuń wiersze za pomocą kreatora zapytań Laravel i LEFT JOIN

  2. Jak wstawić dane w zagnieżdżonym modelu zestawu (MySQL);

  3. Dlaczego w tym WYJAŚNIENI nie są używane żadne klucze?

  4. Coś szybszego niż get_headers()

  5. Dlaczego to nie działa?