首页 新闻 会员 周边

一个sql的问题

0
悬赏园豆:5 [已解决问题] 解决于 2015-02-04 17:09

有表 A 、B 、C

表A中有一个字段 Down_Type,里面存放的是一个标识,如果是1,去查找表B,如果是0查找表C,现在要联合起来怎么去查询,

select ...(case when a.Down_Type=0 then '区域' when a.Down_Type=1 then '场所' end) as aaaa from A a 

接下来怎么写

inner join?left join?又或者?

得到是一个集合,就是DataSet或者DataTable

问题补充:

亦或者用存储过程,但是小弟不会,大神路过请不吝赐教

_Vegetables的主页 _Vegetables | 小虾三级 | 园豆:586
提问于:2015-02-04 14:43
< >
分享
最佳答案
0

select aa, case when a.Down_Type=0 then c.'区域' when a.Down_Type=1 then b.'场所' else null  end) as aaaa

from a left join b on a.标识=a.标识 left join c on a.标识=c.标识

收获园豆:5
木槿昔年 | 菜鸟二级 |园豆:207 | 2015-02-04 14:58

存储过程怎么写呢?

_Vegetables | 园豆:586 (小虾三级) | 2015-02-04 15:14

CREATE PROCEDURE 存储过程名称  

AS
set nocount on BEGIN

select aa, case when a.Down_Type=0 then c.'区域' when a.Down_Type=1 then b.'场所' else null  end as aaaa

from a left join b on a.标识=a.标识 left join c on a.标识=c.标识  END

木槿昔年 | 园豆:207 (菜鸟二级) | 2015-02-04 15:30

@木槿昔年: 好吧,我想我明白了

_Vegetables | 园豆:586 (小虾三级) | 2015-02-04 17:09
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册