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

vấn đề so sánh ngày giờ varchar

Varchar ngày là xấu và chúng không phải là ngày thực, giải pháp tốt nhất là sử dụng các kiểu dữ liệu ngày gốc của mysql.

Vì bạn không thể thay đổi kiểu dữ liệu, bạn có thể sử dụng str_to_date() chức năng và đây là cách nó hoạt động

mysql> select str_to_date('01/08/2015','%d/%m/%Y') as d ;
+------------+
| d          |
+------------+
| 2015-08-01 |
+------------+

Vì vậy, truy vấn cho select sẽ là

select * from table_name
where
str_to_date(date_column,'%d/%m/%Y')
between
str_to_date('01/08/2015','%d/%m/%Y')
and
str_to_date('01/10/2015','%d/%m/%Y')


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mySQL dateTime range Vấn đề về truy vấn

  2. Cách hoạt động của hàm MID () trong MySQL

  3. Làm cách nào để thêm ngôn ngữ mới cho các thông báo lỗi của mysql?

  4. Hiển thị các bảng trong cơ sở dữ liệu SQLite bằng Python

  5. Bảng Tham gia (bảng liên kết) có khóa chính không? nhiều mối quan hệ