2015-10-07 51 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

相关问题