表A 
AID  ANAME  
1   江苏
2   山东
3   广东表B
BID  BNAME  AID
1    苏州   1
2    无锡   1
3    常州   1
4    青岛   2表C
CID  CNAME  BIDS
1    NAME1  1,2
2    NAME2  1,3
3    NAME3  4
知道CID如何查询其所属的AID,下面的SQL会报错
select * from c
left join b 
on c.BIDS like '%'+b.BID+'%'
left join a
on b.AID = a.AID

解决方案 »

  1.   

    select * from c
    left join b 
    left join a
    on b.AID = a.AID and c.BIDS like '%'+b.BID+'%'
      

  2.   

    提示 在将 varchar 值 '%' 转换成数据类型 int 时失败。
      

  3.   

    select * from c
    left join b 
    on c.BIDS like '%'+cast(b.BID as varchar(10)+'%'
    left join a
    on b.AID = a.AID数字和字符串是不能直接用+作连接的。