我有一个以前是 Access 数据库的数据库。现在,我已经迁移到 MySQL。有一个表 'installments' 有很多记录,日期的格式类似于 'YYYY-mm-dd'。
现在我通过在 PHP 中简单地使用 date('d-m-Y') 以类似 'dd-mm-YYYY' 的格式存储新日期。
现在,我要执行这个查询
SELECT * FROM `installments` WHERE YEAR(date) = YEAR(CURRENT_DATE) AND MONTH(date) = MONTH(CURRENT_DATE)
但它只适用于旧格式,如 2016-07-12。它确实适用于 12-07-2016。我现在该怎么办?
如有任何帮助,我们将不胜感激。
我知道我可以使用 date('Y-m-d') 更改格式,但我不想那样做。
最佳答案
试试这个
SELECT * FROM `installments` WHERE YEAR(STR_TO_DATE(DATE,'%d-%m-%Y')) = YEAR(CURRENT_DATE) AND MONTH(STR_TO_DATE(DATE,'%d-%m-%Y')) = MONTH(CURRENT_DATE)
关于php - 以不同的日期格式执行 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38370829/