2016-11-15 53 views
1

我在SQL和Im目前使用它爲我的項目之一。SQL:在一段時間後刪除字段值

我想刪除字段中的數據。如果30天沒有改變。

我認爲是這樣的 - DELETE eventLog WHERE date < (lastChange - INTERVAL 30 DAY);

  1. 事件日誌是一個varchar
  2. lastChange是一個日期

我嘗試過,但我認爲它並沒有真正奏效。

somone有沒有更好的方法來做到這一點?

感謝

回答

1

DELETE沒有從現場移除值。對於varchar你想要的東西,如:

UPDATE tableName 
SET eventLog = '' 
WHERE ... 

OR

UPDATE tableName 
SET eventLog = NULL 
WHERE ... 

DELETE用於從表中刪除整行。

也爲最近30天的部分看到這一點:

MySQL Query - Records between Today and Last 30 Days

+0

感謝。我可以在創建Tabel的同一個腳本中使用它,因爲它應該更新Tabel,每次EventLog在30天內都沒有更改? – jokey

+0

@jokey我不確定你的意思。 – duncan

+0

沒關係,我知道了 – jokey

相關問題