本帖最后由 wyuan_li 于 2011-04-12 14:38:13 编辑

解决方案 »

  1.   

    SELECT B.CUST_SNAME,A.MOLD_NO,A.WSC_NO,A.DLV_DATE,
      SUM(IF(A.PRE_DATE='2011-04-28',PRE_HOUR,0 )) as '04-28'',
      SUM(IF(A.PRE_DATE='2011-04-29',PRE_HOUR,0 )),
      SUM(IF(A.PRE_DATE='2011-05-01',PRE_HOUR,0 )),
      SUM(IF(A.PRE_DATE='2011-05-08',PRE_HOUR,0 ))
     FROM PDU_PLAN A,CUSTOMER B WHERE A.CUST_ID=B.CUST_ID GROUP BY A.CUST_ID,A.MOLD_NO,A.WSC_NO
      

  2.   

    To:rucypli我没表达清楚,汗。。
    还有没有其他方法,因为这个语句是在delphi里用的,sum(if(pre_date='变量',pre_hour,0)) 
    经你这么一写我又把别名在dephi里写成变量了,delphi里:
      sql.Add('  SUM(IF(A.PRE_DATE='''+QryTemp.FieldByName('PRE_DATE').AsString+''',PRE_HOUR,0 )) AS '''+COPY(QryTemp.FieldByName('PRE_DATE').AsString,6,5)+''',');
    -------------------------------------------------
    效果已经达到,不知道还有没有其他方法