php - 当条件有多个且不同时如何更新单个表?

标签 php mysql

我想更新表。我有两个更新查询,但我想在单个更新查询中使用它。两个查询中的列名称和位置条件不同。您能帮我吗?

   $sql="UPDATE points SET hero='$total_hero'+'$points' WHERE user_id='$hero_id'"; 
   $sql="UPDATE points SET zero='$total_zero'+'$points' WHERE user_id='$zero_id'";

最佳答案

您可以使用以下查询

$sql="UPDATE points 
      SET hero= CASE WHEN user_id='$hero_id' THEN '$total_hero'+'$points' ELSE hero END, 
      zero= CASE WHEN user_id='$zero_id' THEN '$total_zero'+'$points' ELSE zero END 
      WHERE user_id='$hero_id' OR user_id='$zero_id'"; 

希望这对您有帮助。

关于php - 当条件有多个且不同时如何更新单个表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41570258/

相关文章:

php - PHP 如何四舍五入到小数点后两位

javascript - 使用 AJAX 提交表单 PHP JQuery 将我带到操作页面

JavaScript 链接到另一个页面

Phpmyadmin 在 xampp 中不工作

mysql - 带有正则表达式的 SQL Like 语句

javascript - NodeJS 同步调用

php - 搜索列格式

php - 通过数据库设置动态网站的用户权限

php - 使用 PDO 设置 utf8 为 mysql 连接

mysql - 如何在mysql连接中将字段转换为字符串