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

Làm cách nào để sử dụng giá trị chuỗi / cột làm hằng số khoảng ngày của mysql (NGÀY, THÁNG ...)?

Thật không may, MySQL mong đợi một từ khóa sau INTERVAL chứ không phải bất kỳ giá trị chuỗi hoặc số nào. Bạn có thể đạt được điều mình muốn bằng cách sử dụng câu lệnh CASE và đưa ra các trường hợp khác nhau với các từ khóa khác nhau.

Ví dụ:giả sử bạn muốn thêm giá trị với đơn vị thích hợp vào ngày thì câu lệnh SQL sẽ như sau:

SELECT CASE unit
       WHEN "DAY" THEN date_add(date, INTERVAL value DAY)
       WHEN "MONTH" THEN date_add(date, INTERVAL value MONTH)
       END
       AS newDate
FROM table

Nhân tiện, cũng hoạt động trong mệnh đề WHERE :)



  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âu lệnh MYSQL IN

  2. Xóa các thẻ HTML khỏi bản ghi

  3. Nhập từ và xuất sang tệp bằng dòng lệnh MySQL

  4. Gặp sự cố với MySQL Join cần đáp ứng nhiều điều kiện

  5. SQL - đếm các hàng có giá trị cụ thể