2010-10-04 30 views
2

我使用下面的SQL語句:MySQL的插入,只有當領域是不同的

$sql = "INSERT INTO counter (uid, placeid, lastdate) VALUES 
('" . $uid . "', '" . $place->place->id . "', '" . $added . "') 
ON duplicate KEY UPDATE count = count + 1`"; 

這保持人多少次檢查軌道 我不想多檢查,每天插件,所以如果當 有人每天檢查兩次,我們不記錄它。

如果$ added = lastdate,我不想更新計數。

這可以用sql語句來完成嗎?

回答

1

這應該工作:

"INSERT INTO counter (uid, placeid, lastdate) VALUES 
('" . $uid . "', '" . $place->place->id . "', '" . $added . "') 
ON duplicate KEY UPDATE count = count + ('" . $added . "' <> lastdate)" 
+0

不,那是行不通的。也許我的變量名稱使它有點混亂。 $ added =簽入日期。計數遞增1。因此,如果$ added = lastdate的值,則count不會遞增1 – John 2010-10-04 23:52:20