sql中要根据某个字段的值的不同进行不同的查询,怎么写?

比如a(id,a1,a2)
b(id,b1,b2,a_id)
c(id,c1,c2,b_id)三个表,当a1的length为2时,查a2,b2,当a1的length为3时,查询a2,b2,c2
sql怎么写呢

sql

2个回答

共同参数为a2,b2, 多余参数为c2,当a1的length为2时c2值赋NULL,当a1的length为3时查出c2值

case when a1=2 then null

else (select c2......)
end as c2

直接利用case when,但是要保证查询语句里面只有一列值

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐