Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

SQL CHỌN LỆNH THEO nhiều cột tùy thuộc vào giá trị của cột khác

Trong truy vấn hiện tại của bạn, bạn sắp xếp theo tổng của bốn cột. Bạn có thể sử dụng least để nhận được giá trị thấp nhất, vì vậy thứ tự theo mệnh đề của bạn có thể giống như sau:

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

Tất nhiên điều này sẽ chỉ sắp xếp theo giá trị thấp nhất. Nếu cả hai hàng đều chia sẻ cùng một giá trị thấp nhất, thì sẽ không có sự sắp xếp theo giá trị thấp nhất thứ hai. Để làm điều đó hơi khó hơn một chút và tôi thực sự không hiểu câu hỏi của bạn là liệu bạn có cần điều đó không.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách tránh ngoại lệ PDO này:Không thể thực hiện các truy vấn trong khi các truy vấn không có bộ đệm khác đang hoạt động

  2. BLOB có được chuyển đổi bằng cách sử dụng bộ ký tự hiện tại / mặc định trong MySQL không?

  3. Tự động tăng một varchar trong truy vấn sql

  4. Django lỗi mysql

  5. lỗi khi cài đặt mysqlclient bằng pip vào MacOS Bigsur