2015-10-07 57 views
1

我有這樣的代碼......php/mysql:是否可以添加一個字段而不選擇數據庫?

$q = "SELECT count FROM " . TABLE_PREFIX . "count WHERE 1 LIMIT 1;"; 
     $r = mysql_query($q); 

     if (!$r) { 
      echo $q; 
      return false; 
     } 

     $o = mysql_fetch_object($r); 
     $count = $o->count + 1; 

    $q = "UPDATE " . TABLE_PREFIX . "count SET `count` = {$count}"; 

正如你可以看到它從數據庫(它只是一個數字)選擇現場併發送回數據庫之前加1,它...

是有可能跳過選擇部分,而只是像這樣說:

`SET `count` += 1` 

或類似的東西?

回答

-1
update TABLE_PREFIX set count = count + 1 where {condition} 
+0

建議@noman計數保留使用返回蜱 – akashBhardwaj

+0

我相信這確實回答了這個問題。它在跳過「select」查詢和PHP邏輯的同時遞增計數1。 – CollinD

0

試試這個。你可以不取,並增加這一領域

UPDATE tablename set `count` = (`count`+1) WHERE 1 LIMIT 1; 
+1

'COUNT'是一個保留字;所以強烈建議使用反引號。 –

+0

感謝這工作! – Kirito

+0

@AlexShesterov謝謝。更新:) – Noman

-1

基本上更新列:

UPDATE `table` SET `count` = `count`+1; 
0
$q = "UPDATE " . TABLE_PREFIX . "count SET `count` = `count`+1 "; 
+0

@kenorb爲什麼這不是問題的答案? –

+0

它缺少解釋(例如爲什麼以及它做什麼)或一些簡短的介紹文本來提高答案的質量,否則進一步的讀者無法從中學習並輕鬆理解您的答案(因爲它與上下文無關)。在這個線程中同樣適用於其他類似的答案。 – kenorb

相關問題