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

SQL SELECT ORDER BY beberapa kolom tergantung pada nilai kolom lainnya

Dalam kueri Anda saat ini, Anda memesan dengan jumlah empat kolom. Anda dapat menggunakan least untuk mendapatkan nilai terendah, sehingga pesanan Anda dengan klausa bisa terlihat seperti:

SELECT *
FROM vehicle
ORDER BY
  `revisit` DESC,
  CASE WHEN `revisit` = 1 THEN LEAST(`FL`, `FR`, `RR`, `RL`) END ASC,
  CASE WHEN `revisit` = 0 THEN `date` END ASC

Tentu saja ini hanya akan mengurutkan berdasarkan nilai terendah. Jika dua baris akan berbagi nilai terendah yang sama, tidak ada pengurutan pada nilai terendah kedua. Untuk melakukan itu sedikit lebih sulit, dan saya tidak benar-benar mengerti dari pertanyaan Anda apakah Anda membutuhkannya.




  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 mendesain Tabel MySql untuk Tag Cloud?

  2. Cara menginstal phpMyAdmin di akun hosting terkelola

  3. Menulis ulang mysql pilih untuk mengurangi waktu dan menulis tmp ke disk

  4. Adakah tutorial basis data relasional yang bagus?

  5. Perl DBI menyisipkan beberapa baris menggunakan kemampuan menyisipkan multipel asli mysql