首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

多个join使用的时候如何设置条件WHERE

2012-10-11 
多个join使用的时候怎么设置条件WHEREselect a.class,a.a+*+ba.num as A类,a.b+*+bb.num as B类,a.c+

多个join使用的时候怎么设置条件WHERE
select a.class, 
 a.a+'*'+ba.num as A类, 
 a.b+'*'+bb.num as B类, 
 a.c+'*'+bc.num as C类 
 from ta a 
 join tb ba on ba.classin ='A类' 
 join tb bb on bb.classin ='B类' 
 join tb bc on bc.classin ='C类'
数据库中有TA表和TB表 当使用上述查询语句后怎么在后面添加WHERE语句
例如我TB表中有一列是BIT为的 如果我只选中A类那他只查询
select a.class, 
 a.a+'*'+ba.num as A类, 
 from ta a 
 join tb ba on ba.classin ='A类' 
如果我选中了AB两类那它查询
select a.class, 
 a.a+'*'+ba.num as A类, 
 a.b+'*'+bb.num as B类, 
 from ta a 
 join tb ba on ba.classin ='A类' 
 join tb bb on bb.classin ='B类' 
如果选中了ABC三个那他查询
select a.class, 
 a.a+'*'+ba.num as A类, 
 a.b+'*'+bb.num as B类, 
 a.c+'*'+bc.num as C类 
 from ta a 
 join tb ba on ba.classin ='A类' 
 join tb bb on bb.classin ='B类' 
 join tb bc on bc.classin ='C类'
这样的 请问怎么用WHERE加在后面呢?



[解决办法]

SQL code
select a.class, a.a+'*a
[解决办法]
建议在 on 后面的条件要接两个表的关联信息。
[解决办法]
如果你的where条件不固定,你可以把语句改成动态的,然后再进行语句组合,最后exec执行。

[解决办法]
那样不好 最好用过程
[解决办法]
where关联语句写在最后面

不过一般建议使用动态语句
[解决办法]
1085778239
[解决办法]
那样不好 最好用过程

热点排行