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

MySQL:lấy TỐI ĐA hoặc TUYỆT VỜI nhất của một số cột, nhưng với các trường NULL

Sử dụng COALESCE

SELECT id, 
   GREATEST(date1, 
     COALESCE(date2, 0),
     COALESCE(date3, 0)) as datemax 
FROM mytable

Cập nhật:Câu trả lời này trước đây đã được sử dụng IFNULL cái nào hoạt động, nhưng như Mike Chamberlain đã chỉ ra trong các nhận xét, COALESCE thực sự là phương pháp ưa thích.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kích hoạt MySQL nếu điều kiện tồn tại

  2. Các biểu tượng cột của bàn làm việc mysql có ý nghĩa gì

  3. MySQL - Giá trị của 1 trong DECIMAL (2, 2) sắp ra mắt là 0,99

  4. Tạo lỗi kích hoạt:cú pháp không hợp lệ

  5. Các công thức để tính toán tiệm cận địa lý