gpt4 book ai didi

MYSQL - 根据单个 CASE 语句更新多个字段

转载 作者:行者123 更新时间:2023-11-29 05:56:53 31 4
gpt4 key购买 nike

目标

我正在寻找一种使用相同 CASE 语句更新一个或两个字段的方法

UPDATE vendor
SET special_cost =
(
CASE
WHEN
cost > 14
THEN
14
ELSE
SET special_cost = cost, cost = 14
END
)
WHERE upc = '12345678912345'

逻辑

这是一些逻辑,可以解释我上面想要发生的事情。

if ($cost > 14) {
$special_cost = 14;
} else {
$special_cost = $cost;
$cost = 14;
}

似乎没有办法用单个 CASE 语句来做到这一点。也许,这可以用 mysql IF 语句来完成?

最佳答案

你指的是 case expressions 而不是 case statements

你似乎想要这样的东西:

UPDATE vendor
SET special_cost = GREATEST(cost, 14),
cost = 14
WHERE upc = '12345678912345';

关于MYSQL - 根据单个 CASE 语句更新多个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48569648/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com