为了账号安全,请及时绑定邮箱和手机立即绑定

我想实现以下将根据A的值查出的B赋给C,当A为空时将空赋给C,怎么实现呢?

我想实现以下将根据A的值查出的B赋给C,当A为空时将空赋给C,怎么实现呢?

大话西游666 2022-12-15 17:13:52
例如有个表TABLE  A B  1 a2 b case when A IS NULL then C='' else C=B end)as C 对吗?其实我的题目是这样的,共有两个表,TABLE1 TABLE2A B C D1 a 1 x当查询到table1.A=TABLE2.C时选出TABLE2.D  当TABLE1.A的值为空时就TABLE2.D也为空
查看完整描述

3 回答

?
慕容3067478

TA贡献1773条经验 获得超3个赞

不知道你具体什么数据库,,给出sqlserver,你上面写的就对了,

给你写出详细的测试记录吧


CREATE TABLE test(a INT,b VARCHAR(10))INSERT INTO dbo.test        ( a, b )SELECT 1,'a'UNION ALLSELECT 2,'b'UNION ALLSELECT null,'c'---这里加了一条数据,便于你看出结果 SELECT a,b,c=(CASE WHEN ISNULL(a,'')='' THEN null ELSE END)--注个人喜欢用isnull()函数FROM test

结果:

1 a a

2 b b

NULL c null


查看完整回答
反对 回复 2022-12-18
?
互换的青春

TA贡献1797条经验 获得超6个赞

可以CASE WHEN A IS NULL THEN '' ELSE B END C

查看完整回答
反对 回复 2022-12-18
?
慕妹3242003

TA贡献1824条经验 获得超6个赞

select case when A is null then null else B end as C from table

查看完整回答
反对 回复 2022-12-18
  • 3 回答
  • 0 关注
  • 84 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信