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

mysql STR_TO_DATE không hoạt động

Để nó ở chức năng đơn giản hơn S. DATE() trả về phần ngày của chuỗi ở định dạng YYYY-MM-DD:

SELECT DATE(birthday) FROM `test`

Kết quả:

2004-12-25      
2004-12-25      
1994-12-25      
1994-12-01      

Lý do mã của bạn không hoạt động là STR_TO_DATE() mong đợi các định dạng đầu vào và đầu ra giống nhau, ví dụ:STR_TO_DATE('2014-08-29', '%Y-%m-%d') . Hãy xem ví dụ trong tài liệu . Hàm này được sử dụng chủ yếu để chuyển đổi ngày hoặc giờ từ định dạng này sang định dạng khác, trong đó định dạng ban đầu là thứ gì đó từ bên ngoài MySQL và bạn muốn nhập dữ liệu vào định dạng ngày của MySQL chẳng hạn - trong trường hợp này, bạn sẽ biết đâu là định dạng gốc. định dạng ngày là.

Ví dụ:

SELECT STR_TO_DATE('20041225', '%Y-%m-$d');   -- null - formats don't match
SELECT STR_TO_DATE('2004-12-25', '%Y-%m-%d'); -- 2004-12-25 - formats match


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. chèn dữ liệu vào một cột mới của một bảng đã có sẵn

  2. Lỗi chung:1615 Cần chuẩn bị lại báo cáo đã chuẩn bị trước

  3. Kích thước bảng tối đa cho cơ sở dữ liệu MySQL

  4. cột mySQL để giữ mảng

  5. Cách làm trống cơ sở dữ liệu MySQL