我要truncate
带有日期时间子句的表中的一些记录。
This链接有解决方案,但它对我不起作用。
TRUNCATE TABLE 'meter_to_sim_mapping' WHERE 'meter_to_sim_mapping'.'mapped_at' <=
在上面的 where 子句中,我想添加日期时间值。值为 2018-04-02 16:03:52
.查询应该删除该日期之前的所有记录。
如何截断带有日期时间的表格?
如有任何帮助,我们将不胜感激。
最佳答案
您需要使用DELETE
DELETE FROM TABLE_NAME
WHERE DATE_COLUMN < NOW() - INTERVAL N DAY
或
DELETE FROM TABLE_NAME
WHERE CAST(DATE_COLUMN AS DATE) < STR_TO_DATE('1-01-2012', '%d-%m-%Y') - INTERVAL N DAY
代替 NOW()
您可以使用日期时间值
STR_TO_DATE('12-01-2014 00:00:00','%m-%d-%Y %H:%i:%s')
演示
关于mysql - 截断日期时间早于 n 天的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50020324/