如何使用PHP mysqli增加MySQL中的值

时间:2016-06-30 08:28:05

标签: php mysql

我在MySQL表中有一个名为col1的整数列。现在,我需要的是将其值增加一些数字,比如1(可能是2,3或任何东西)。即如果它已经保持10的值,现在我希望它变为11.我知道,我可以通过首先选择原始值,用PHP递增它然后更新值来实现。但是我想知道是否有一种方法可以让我不必选择之前的值来增加它。

4 个答案:

答案 0 :(得分:3)

这可以非常简单地完成,只需执行这样的查询

$sql = "UPDATE tablename SET col1=col1+1 WHERE key=99";

或者你喜欢的任何价值

$sql = "UPDATE tablename SET col1=col1+3 WHERE key=99";

答案 1 :(得分:0)

我有一个表,其中有一条记录用于多个计数器。

  1. 手动创建一个名为counts的表,该表只有一个Int列,名为myCount
    (以后,为其他计数器添加更多的 Int 列。)
    CREATE TABLE counts (myCount int);

  2. 手动为列0插入一个值为myCount的单条记录。
    (从不添加更多记录,仅将其用于所有计数器。)
    INSERT INTO counts (myCount) VALUES (0);

然后,每次要将计数器myCount递增1时运行此代码:

<?php
  require_once('connect.php');
  $cn = new mysqli($servername, $username, $password, $dbname);
  if(!$cn->connect_error){$cn->query("UPDATE counts SET myCount=myCount+1");}
?>
  • connect.php是一个简单的连接信息文件。
  • 此代码(有意地)不产生任何输出,即使出现问题也是如此。

答案 2 :(得分:0)

您可以使用以下查询进行更新。

$sql = "update your_table
set col1= col1 + (some number)
where id = (some condition)";

答案 3 :(得分:-1)

您可以使用更新查询。实施例

$update_sql = "update tablename set col1 = col1 + 1 where id = 1";

(ID可以是MySQL表中要为其递增值的行的任何唯一键值)