数据库
首页 > 数据库> > 在一个查询中更新/增加多个MySQL列

在一个查询中更新/增加多个MySQL列

作者:互联网

我有这个查询,它的工作原理…

UPDATE `contacts` 
       SET `calls_to`=`calls_to`+1 
  WHERE `contact_no` = '0412345678';

我还想做的是在“费用”字段中添加一个值.据我了解,做到这一点的方法是…

UPDATE `contacts` 
       SET `calls_to` = `calls_to`+1, 
             `cost_to` = `cost_to`+0.25 
  WHERE `contact_no`='0412345678';

显然,正如我在此处发布的那样,它无法正常运行.

-更新-

根据要求,表结构..

id                  int(255) auto_increment
contact_owner  varchar(255)
contact_no       varchar(11)
contact_name   varchar(255)
calls_to            int(255)
txts_to             int(255)
time_talked_to   int(255)
cost_to            decimal(65,2)

解决方法:

检查cost_to的数据类型是否为int.如果其值不为null,则也更新该列.

UPDATE `contacts` 
       SET `calls_to` = `calls_to`+1, 
             `cost_to` = `cost_to`+0.25 
  WHERE `contact_no`='0412345678' AND
          calls_to is not null AND
          cost_to is not null;

标签:sql-update,sql,mysql
来源: https://codeday.me/bug/20191106/1998702.html