【问题标题】:I am trying to update multiple values in one column我正在尝试更新一列中的多个值
【发布时间】:2020-12-14 14:10:51
【问题描述】:

这是问题:

-如果手机价格低于R8000,那么有R100的涨价 -如果手机价格为R8000或以上,则手机原售价有10%的降价/降价。

这是我尝试过的:

UPDATE       tblPhoneDetails
SET          CellPhone_UnitPrice = CellPhone_UnitPrice - 100
WHERE        (CellPhone_UnitPrice < '8000'),
SET          CellPhone_UnitPrice = CellPhone_UnitPrice - CellPhone_UnitPrice * 0.1
WHERE        (CellPhone_UnitPrice > '8000')

【问题讨论】:

  • MySQL SQL Server。请仅标记您正在运行的一个数据库。
  • @KaylaThompson 。 . .我删除了不一致的数据库标签。请仅使用您真正使用的数据库进行标记。此外,您将CellPhone_UnitPrice 设置为数字值,但您将其作为字符串进行比较。真正的类型是什么?你真正想要什么比较?

标签: sql sql-update case


【解决方案1】:

我想你想要一个case 表达式:

update tblphonedetails
set cellphone_unitprice = case 
    when cellphone_unitprice < 8000 then cellphone_unitprice - 100 
    else cellphone_unitprice * 0.9
end

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    相关资源
    最近更新 更多