繁体   English   中英

MySQL 在单个查询中使用 PHP 中的 IF ELSE 语句更新多个列

[英]MySQL Update Multiple Columns with IF ELSE Statement in PHP in single Query

我在 PHP 中有两个 MySql 查询。 我想将它们合并为一两个以减少数据库负载。

$sql1 = "UPDATE doorshippers_products 
        SET status='2', price='".$pp."', stock='0', timestemp='".$time."' 
        WHERE sku=$skuu AND price!=$pp";

$conn->query($sql1);


$sql2 = "UPDATE doorshippers_products 
        SET timestemp='".$time."' WHERE 
        sku=$skuu AND price=$pp";

$conn->query($sql2);        


我想使用 if/else 将它们合并为一个

您可以使用IF并在一个条件下将列设置回相同的值,否则为新值。

$sql1 = "UPDATE doorshippers_products 
        SET status=IF(price = $pp, status, '2'), 
        price='".$pp."', 
        stock=IF(price = $pp, stock, '0'), 
        timestemp='".$time."' 
        WHERE sku=$skuu";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM