Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

batas mysql di dalam grup?

Inti dari fungsi agregat (dan GROUP BY diperlukan) adalah untuk mengubah banyak baris menjadi satu baris. Jadi jika Anda benar-benar hanya ingin 5 rekening tabungan teratas dan 5 rekening giro teratas dan 5 rekening USD teratas dll., yang Anda butuhkan lebih seperti ini:

kriteria:top 5 jenis akun tertentu menurut account_balance

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;

Ini tidak bagus, tetapi jika Anda membuat SQL dengan skrip, maka subbing di account_types dan menggabungkan kueri menjadi mudah.



  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 MENGOPTIMALKAN semua tabel?

  2. Mengambil baris RAND() tanpa ORDER BY RAND() hanya dalam satu kueri

  3. Kunci unik MyISAM terpotong pada 64 byte, menyebabkan tabrakan

  4. Pembaruan/edit Laravel menggunakan foreach loop

  5. Bagaimana cara mendapatkan jumlah baris yang terpengaruh, saat menjalankan kueri MySQL dari bash?