【问题标题】:SQL: Delete fields value after an amount of timeSQL:一段时间后删除字段值
【发布时间】:2016-11-15 14:46:03
【问题描述】:

我是 SQL 的新手,我目前在我的一个项目中使用它。

我想删除 字段 中的数据,例如。如果 30 天没有更改。

我想到了这样的事情 - DELETE eventLog WHERE date < (lastChange - INTERVAL 30 DAY);

  1. eventLog 是一个 varchar
  2. lastChange 是一个日期

我试过了,但我认为它并没有真正奏效。

somone 有更好的方法吗?

谢谢

【问题讨论】:

    标签: mysql sql


    【解决方案1】:

    DELETE 不会从字段中删除值。对于varchar,您需要类似:

    UPDATE tableName
    SET eventLog = ''
    WHERE ...
    

    UPDATE tableName
    SET eventLog = NULL
    WHERE ...
    

    DELETE 用于从表中删除整行。

    关于过去 30 天的部分,请参见:

    MySQL Query - Records between Today and Last 30 Days

    【讨论】:

    • 谢谢。我可以在创建表格的同一脚本中使用它吗,因为它应该更新表格,每次 eventLog 30 天没有更改?
    • @jokey 我不确定你的意思。
    • 所以只需将其放入每天运行两次的脚本中……抱歉,仍然不确定有什么不清楚的地方。也许有关您如何运行它的更多详细信息会有所帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-21
    • 1970-01-01
    • 2020-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多