多个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加在后面呢?
[解决办法]
select a.class, a.a+'*a
[解决办法]
建议在 on 后面的条件要接两个表的关联信息。
[解决办法]
如果你的where条件不固定,你可以把语句改成动态的,然后再进行语句组合,最后exec执行。
[解决办法]
那样不好 最好用过程
[解决办法]
where关联语句写在最后面
不过一般建议使用动态语句
[解决办法]
1085778239
[解决办法]
那样不好 最好用过程