2011-06-04 92 views
0

我正在嘗試在博客上做一個評論表。在我的表,我想有這些列:更新時的MySQL自動增量

  • ID
  • 收視總數
  • 評級

這樣我就可以得到平均評級,簡單的數學的總價值。

有沒有一種方法可以自動將1增加到具有總評分數的列,並將評分添加到總評分數中,而無需首先檢索信息?

例如,在PHP方面:

//instead of doing 
$column=$currentValue; 
$column=$column+5; 

//do 
$column+=5; 

這可能與一個MySQL更新功能,如果列是INT?

回答

6

嘗試這樣的事情

update mytable set total=total+1; 
+1

請注意,'total'不能爲'NULL',因爲+1會按預期工作。 – 2011-06-04 07:11:47

2

您可以使用此聲明:

UPDATE table1 SET total = IFNULL(total,0) + 1; 

這將合計設定爲1,如果是null之前,增加它並非如此。
雖然這有些破解,但最好創建列total作爲default '0'