update case when联合left join使用

本文探讨了如何在SQL中结合UPDATE与CASE WHEN/ELSE语句,实现资产状态根据出库类型动态调整,并展示了两种Case函数形式的应用实例。同时,讲解了Case函数的工作原理和左连接操作在数据更新中的运用。
摘要由CSDN通过智能技术生成

当update与when一起使用

UPDATE A
SET asset_status =(

CASE
WHEN outType =1THEN
4
WHEN outType =2THEN
5
ELSE 0
END )

//资产状态 根据 出库类型 改变 
//int型对应值在数据字典

当update与case when 与left join 一起使用

update hard_asset
left join hard_storage_out_asset on hard_asset.asset_id = hard_storage_out_asset.asset_id
left join hard_storage_out on hard_storage_out.storage_out_id = hard_storage_out_asset.storage_out_id
set   hard_asset.asset_status =
(case
    when hard_storage_out.out_type='1' then '2'
    when hard_storage_out.out_type='2' then '5'
    when hard_storage_out.out_type='3' then '7'
    when hard_storage_out.out_type='4' then '6'  
    else 0
end)

拓展:

//Case具有两种格式。简单Case函数和Case搜索函数。 
--简单Case函数 
CASE sex 
         WHEN '1' THEN '男' 
         WHEN '2' THEN '女' 
ELSE '其他' END 
--Case搜索函数 
CASE WHEN sex = '1' THEN '男' 
         WHEN sex = '2' THEN '女' 
ELSE '其他' END 

注意:Case函数只返回第一个符合条件的值,剩下的Case部分将会被自动忽略

实例使用参考博客1:https://www.cnblogs.com/clphp/p/6256207.html
2:https://www.cnblogs.com/a757956132/p/4105205.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值