我试图使用以下查询从表客户中查找 12 月出生的客户:
SELECT *
FROM customers
WHERE date_of_birth LIKE '____-12-%' ;
但它会引发错误:ER_WRONG_VALUE: Incorrect DATE value: '____-12-%'
date_of_birth 值的类型是 DATE,它在表中定义为date_of_birth DATE,
我得到的错误快照:
这里到底有什么问题?我记得我以前用过这个,它工作得很好,但现在(可能是由于新的更新)它不工作了。甚至似乎都不是因为 MySQL 严格模式。我不知道究竟是什么导致了问题。
另外请不要向我建议我已经有使用 MONTH() 之类的替代方法可以正常工作:
SELECT *
FROM customers
WHERE MONTH(date_of_birth) = 12;