执行下面的,你应该有所收获了select a.DRINK_NUMBER,b.DRAW_NUM,c.DRAW_NUM
from drink_admin a
left join userdraw_record b on b.DRINK_NUMBER = a.DRINK_NUMBER and b.DATE = 20021130000000
left join userdraw_record c on c.DRINK_NUMBER = a.DRINK_NUMBER and c.DATE = 20030621150026

解决方案 »

  1.   

    :) 只有分成两个 SQL 来解决
      

  2.   


    SELECT a.DRINK_NUMBER,SUM(ISNULL(b.aDRAWNUM,0)) AS aDRAWNUM,SUM(ISNULL(b.bDRAWNUM,0)) AS bDRAWNUM
    FROM drink_admin a
    LEFT JOIN
    (
      SELECT DRINK_NUMBER, SUM(DRAW_NUM) AS aDRAWNUM,0 AS bDRAMNUM
      FROM userdraw_record WHERE [DATE] = 20021130000000
      GROUP BY DRINK_NUMBER
      
      UNION ALL
      
      SELECT DRINK_NUMBER, 0 AS aDRAWNUM,SUM(DRAW_NUM) AS bDRAMNUM
      FROM userdraw_record WHERE [DATE] = 20030621150026
      GROUP BY DRINK_NUMBER
    ) b ON b.DRINK_NUMBER = a.DRINK_NUMBER
    GROUP BY a.DRINK_NUMBER