2011-04-25 95 views
-2

我的SQL查詢包含一個不起作用的等式。下面是它的樣子:我的DELETE在SQL查詢中出了什麼問題?

$delete = ("DELETE FROM table WHERE $timecode - time < 86400"); 

基本上我想刪除一天前記錄的行(又名86400s)。你可以猜到,$timecode = time();並且time列也是時間戳。

+4

請告訴我們發生了什麼。另外,你使用什麼語言,什麼數據庫,請解釋如何生成時間列。 – 2011-04-25 20:36:16

回答

1

最好的猜測是你的表中的時間列與時間函數混淆。第二個問題:從你的描述中,不要’你想要>而不是<?

DELETE FROM t WHERE $timecode - t.time > 86400; 
1

這是否適合您?

$delete = "DELETE FROM table WHERE (NOW()-86400) > time";

+2

再次嗨!如果添加4個空格,或者單擊{}按鈕,則會將代碼格式添加到該行 – colinmarc 2011-04-25 20:39:43

+0

oh hi @colinmarc!你跟着我;)...好吧,我會更多地強調代碼,使我不會馬虎 – CenterOrbit 2011-04-25 20:51:05