left outer join invappdetail b on a.orderid=b.cmd //有没有这种功能条件 a.orderid like b.cmd%改为:left outer join invappdetail b on a.orderid like '%' + b.cmd + '%'
left outer join invappdetail b on a.orderid=b.cmd //有没有这种功能条件 a.orderid like b.cmd% 改为: left outer join invappdetail b on a.orderid like '%' + b.cmd + '%' 或left outer join invappdetail b on charindex(b.cmd , a.orderid) > 0
left outer join invappdetail b on a.orderid like ('%'+b.cmd+'%') cmd
like , charindex之类的查询就不要考虑速度了,况且可能出现迪卡尔积.例如: 010203 01 0102 01 01 01可能出现三条记录(类推).所以,你要先考虑你这样的算法是否正确?
select b.docid,a.orderid,a.qtyttl,b.itemid,c.itemname,c.spec,b.qtyapp,b.currentvalue,b.netappvalue,d.recdate,d.warehouseid from shipmaster a left outer join invappdetail b on a.orderid=b.cmd //有没有这种功能条件 a.orderid like b.cmd%--》》left outer join invappdetail b on a.orderid like b.cmd+'%'
010203 01
0102 01
01 01可能出现三条记录(类推).所以,你要先考虑你这样的算法是否正确?
010203 01
0102 01
01 01 可能出现三条记录(类推). 所以,你要先考虑你这样的算法是否合理?
只要达到上面的功能,怎么写sql语句都可以
from shipmaster a
left outer join invappdetail b on a.orderid=b.cmd //有没有这种功能条件 a.orderid like b.cmd%--》》left outer join invappdetail b on a.orderid like b.cmd+'%'