我们有一个存储过程,IN参数今天是DATE。在此过程中,aql将此今日值与具有时间戳列的表进行比较。 例如:
column A
2012-12-01 00:00:00
SQL:
select * from t where A = today.
我们在phpmyadmin中运行此程序,运行正常。但它在命令行中不起作用。
为什么?
答案 0 :(得分:4)
猜猜您可能需要将这两个日期格式化为通用格式。为了安全起见,您甚至可以根据需要添加Date()
或str_to_Date
...如果您不确定列{{1}包含一个合适的日期......
请试试这个:
A
如果你的意思是SELECT * FROM tablename
WHERE DATE_FORMAT(A, '%d/%m/%Y') = DATE_FORMAT(TODAY, '%d/%m/%Y');
CURDATE()
,那么请尝试这个,
today
答案 1 :(得分:1)
日期可能采用不同的格式,导致它们不相等。您可以使用datediff(date1, date2) = 0
来解决此问题。