多个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
------解决方案--------------------
那样不好 最好用过程