我希望在昨天的日子里使用PHP和MySQL来插入。所以我的想法是:
INTO chartValues SET timestamp='1353369600', `datetime`=DATEADD(d,-1,GETDATE())
但它不起作用:
1064 - 您的SQL语法出错;检查手册 对应于您的MySQL服务器版本,以便使用正确的语法 'INTO chartValues SET timestamp ='1353369600'附近, 第1行
datetime
= DATEADD(d,-1,GETDATE())'
提前致谢
答案 0 :(得分:4)
DATEADD
和GETDATE()
是SQL Server中使用的T-SQL函数。
您希望将DATE_ADD()
或DATE_SUB()
与NOW()
INSERT INTO chartValues SET timestamp='1353369600', `datetime`= DATE_SUB(NOW(), INTERVAL 1 DAY)
DATE_SUB(date, INTERVAL expr unit)
答案 1 :(得分:0)
我相信您应该在MySql中使用NOW()
,而不是getdate()
。请参阅Mysql Date and Time Functions。
答案 2 :(得分:0)
Date_add()不是dateadd() now()不是getdate()
底部的链接是我推荐的mysql编程的一个很好的参考。
所以datetime
= date_add(d,-1,now())
答案 3 :(得分:0)
你可以在php中使用这样的东西:
date("F j, Y", time() - 60 * 60 * 24);
根据数据库中的数据类型,您可以使用所需的格式更改“F j,Y”。
在mysql中是这样的:
CAST(NOW() - INTERVAL 1 DAY AS DATE).