我有一个名为 filesUploaded 的表格,其中一列名为 dataTimer ,类型为varchar
。
当我在表格中记录新值时,我使用以下命令以时间戳格式输入当前日期:
strtotime(date("Y-m-d H:i:s"));//Example: 145879957
要删除表格中超过5分钟的记录,请使用以下语法:
DELETE FROM filesUploaded WHERE dataTimer < (NOW() - INTERVAL 5 MINUTE)
但它不起作用,可能会发生什么?
答案 0 :(得分:2)
问题是你以varchar格式存储它。
您需要将其转换为日期格式,然后才能删除
DELETE FROM filesUploaded WHERE STR_TO_DATE(dataTimer,%Y-%m-%d %H:%M:%S) < (NOW() - INTERVAL 5 MINUTE)