qq_38344957
2017-11-07 02:58
采纳率: 0%
浏览 5.9k

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怎么写呢

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • CodeKind 2017-11-07 03:18

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

    case when a1=2 then null

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

    打赏 评论
  • 数据甄小白 2017-11-07 03:25

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

    打赏 评论

相关推荐 更多相似问题