【发布时间】:2018-04-23 10:41:28
【问题描述】:
我有一个包含以下值的表。
正如你在图片中看到的,日期不是以标准的mysql日期格式存储的。
它存储在 dd-mm-yy
我想选择 invoicedate 早于 20-09-2017 的行,因此它应该包含第 13-09-17 行。
我尝试了以下查询,但没有任何效果。
SELECT *
FROM `invoices`
WHERE date_format(invoicedate,'%d-%m-%Y') < date_format(20-09-17,'%d-%m-%Y')
【问题讨论】:
-
最好将dd-mm-yyyy格式转为yyyy-mm-dd格式,并使用日期作为数据类型而不是char或varchar数据类型
-
你能在日期检查中使用strtotime()吗stackoverflow.com/questions/5082261/…这对你有帮助
标签: mysql