select a.物品名称,b.单位名称,c.单位名称,a.日期
from A a,B b,B c
where a.生产单位名称=b.单位名称 and a.使用单位名称=c.单位名称

解决方案 »

  1.   

    SELECT a.物品名称, b.单位名称 as 生产单位名称, b1.单位名称 AS 使用单位名称, a.日期
    FROM a LEFT OUTER JOIN
          b b_1 ON a.使用单位编码 = b_1.单位编码 LEFT OUTER JOIN
          b ON a.生产单位编码 = b.单位编码
    看看吧
      

  2.   

    SELECT a.物品名称, b.单位名称 as 生产单位名称, b1.单位名称 AS 使用单位名称, a.日期
    FROM a LEFT OUTER JOIN
          b b1 ON a.使用单位编码 = b_1.单位编码 LEFT OUTER JOIN
          b ON a.生产单位编码 = b.单位编码
    b_1多加了一个‘_’
      

  3.   

    b b1 ON a.使用单位编码 = b1.单位编码b和b1是表b吗?
      

  4.   

    to kidman521
    谢谢!!开始没看懂。
    to evo_vii()
    谢谢!!
      

  5.   

    假设:表A的物品名称和表B的单位编码是主键,下面的SQL可以实现(Access通过)
    SELECT 
    aa.物品名称, 
    (SELECT bb.单位名称 FROM 表B bb WHERE aa.生产单位编码 = bb.单位编码) AS 生产单位名称, 
    (SELECT bb.单位名称 FROM 表B bb WHERE aa.使用单位编码 = bb.单位编码) AS 使用单位名称, 
    aa.日期
    FROM 表A aa
    WHERE aa.物品名称 = (表单.物品名称) AND
    aa.日期 = (表单.日期)
    ORDER BY aa.物品名称, aa.日期;