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

Bisakah ada kueri SQL agnostik database untuk mengambil N baris teratas?

Untuk mendapatkan 5 pencetak gol terbanyak dari tabel ini:

CREATE TABLE people
             (id      int, 
              name    string, 
              score   int)

coba SQL ini:

SELECT id, 
       name, 
       score
FROM   people  p
WHERE  (SELECT COUNT(*) 
        FROM   people p2
        WHERE  p2.score  > p.score 
       ) <=4 

Saya percaya ini harus bekerja di sebagian besar tempat.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dapatkan daftar semua nama kolom dalam tabel yang tidak memiliki NULL sebagai nilai defaultnya?

  2. Pilih baris acak per nilai bidang yang berbeda?

  3. MySQL Memuat Data Infile

  4. Koneksi MySQL tidak berfungsi

  5. Masukkan array ke database MySQL dengan PHP