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

bagaimana cara mengurutkan urutan LEFT JOIN dalam kueri SQL?

Coba gunakan MAX dengan GROUP BY .

SELECT u.userName, MAX(c.carPrice)
FROM users u
    LEFT JOIN cars c ON u.id = c.belongsToUser
WHERE u.id = 4;
GROUP BY u.userName;

Informasi lebih lanjut tentang GROUP BY

Klausa grup menurut digunakan untuk membagi rekaman yang dipilih menjadi grup berdasarkan kombinasi unik grup menurut kolom. Ini kemudian memungkinkan kita untuk menggunakan fungsi agregat (mis. MAX, MIN, SUM, AVG, ...) yang akan diterapkan ke setiap grup record secara bergantian. Basis data akan mengembalikan catatan hasil tunggal untuk setiap pengelompokan.

Misalnya, jika kita memiliki satu set catatan yang mewakili suhu dari waktu ke waktu dan lokasi dalam tabel seperti ini:

Location   Time    Temperature
--------   ----    -----------
London     12:00          10.0
Bristol    12:00          12.0
Glasgow    12:00           5.0
London     13:00          14.0
Bristol    13:00          13.0
Glasgow    13:00           7.0
...

Kemudian jika kita ingin mencari suhu maksimum berdasarkan lokasi, maka kita perlu membagi catatan suhu ke dalam pengelompokan, di mana setiap catatan dalam kelompok tertentu memiliki lokasi yang sama. Kami kemudian ingin mencari suhu maksimum masing-masing kelompok. Permintaan untuk melakukan ini adalah sebagai berikut:

SELECT Location, MAX(Temperature)
FROM Temperatures
GROUP BY Location;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara memasukkan pesan email masuk ke database mySQL?

  2. gcc tidak akan mengkompilasi dan menjalankan perpustakaan MySQL C

  3. Doctrine 2 fungsi mysql FIELD diurutkan berdasarkan

  4. Mengapa Anda tidak boleh menggunakan mysql_fetch_assoc lebih dari 1 kali?

  5. Cara Menghubungkan ke Database MySQL atau MariaDB