本帖最后由 lnnweb1 于 2013-03-23 12:26:50 编辑

解决方案 »

  1.   

    select a.ID, a.DJBID, a.GoodsName,    a.SpecType, a.res, a.Quantity, a.Provider, b.quantity_ck 
    from Storage_kc a
    left join ck1_ls b 
    on a.DJBID = b.DJBID
      

  2.   

    select a.ID, a.DJBID, a.GoodsName,    a.SpecType, a.res, a.Quantity, a.Provider, b.quantity_ck 
    from Storage_kc a
    left join ck1_ls b 
    on a.DJBID = b.DJBID
      

  3.   

    回1,2楼.这是我试着改的,但提示无法绑定由多个部分组成的标识符 "djb.Number"。
    select djb.*,Storage_kc.ID,Storage_kc.SpecType,Storage_kc.res,Storage_kc.Quantity,Storage_kc.Provider,ck1_ls.Quantity_ck 
    from djb,Storage_kc 
    left join ck1_ls 
    on djb.Number=Storage_kc.DJBID and djb.Number=ck1_ls.DJBID and Storage_kc.GoodsName like '%" + @TextBox6.Text + "%' ORDER BY djb.GoodsName
    我以上代码怎么改?
      

  4.   

    改为:
    select a.ID, a.DJBID, a.GoodsName,    a.SpecType, a.res, a.Quantity, a.Provider, b.quantity_ck 
    from Storage_kc a
    left join ck1_ls b 
    on a.DJBID = b.DJBID
    right join djb c
    on c.goodsname = a.goodsname
    and c.Number=b.DJBID 
    where a.GoodsName like '%" + @TextBox6.Text + "%' ORDER BY c.GoodsName
      

  5.   

    回4楼,你所指的a表是Storage_kc表, b表是ck1_ls表,c表是djb.这三个表吗?
      

  6.   

    Storage_kc a
    ck1_ls b 
    djb c
    不想多敲字,就取了个别名。另一个帖子里我也回复了。。
      

  7.   

    1.要想得到这个结果就先要看表中那个表做主表,找到了主表就好办了 ,
    在这个Storage_kc 是主表,在这个表下面去left join 如下:(
    select a.*,b.Quantity_ck from Storage_kc as a
    left join ck1_ls as b on a.DJBID=b.DJBID)这样结果就出来了,要是非要连接djb表的话,那就在下面在join 一下,不取这个表的任何列就可以了2.也可以 用right join 然后在join djb 表
    如下:
    select b.*,a.Quantity_ck from ck1_ls as a 
    right join Storage_kc as b on a.DJBID=b.DJBID但是我个人比较习惯用left join ,希望对你有用