SQL语句如下:
SELECT T1.ITEM,SUM(T1.ACT_COST21) COST,SUM(T1.COMPLETE_QTY) QTY, 6*QTY AS COST21 FROM GLOVIA_PROD.WO T1,GLOVIA_PROD.WO_COMP T2 where T2.TRAN_DATE BETWEEN TO_DATE('2010-07-01','YYYY-MM-DD') AND TO_DATE('2010-07-31','YYYY-MM-DD') and T2.CCN=T1.CCN and T2.MAS_LOC=T1.MAS_LOC and T2.WO_NUM=T1.WO_NUM and T2.WO_LINE=T1.WO_LINE AND T1.CCN='CHCIDG'GROUP BY T1.ITEM"
为什么引用计算列QTY时报错?

解决方案 »

  1.   

    SELECT T1.ITEM,SUM(T1.ACT_COST21) COST,
    SUM(T1.COMPLETE_QTY) QTY, 6*SUM(T1.COMPLETE_QTY) AS COST21 --改成这样试试
    FROM GLOVIA_PROD.WO T1,
    GLOVIA_PROD.WO_COMP T2 
    where T2.TRAN_DATE BETWEEN TO_DATE('2010-07-01','YYYY-MM-DD') 
    AND TO_DATE('2010-07-31','YYYY-MM-DD') and 
    T2.CCN=T1.CCN and 
    T2.MAS_LOC=T1.MAS_LOC and 
    T2.WO_NUM=T1.WO_NUM and 
    T2.WO_LINE=T1.WO_LINE AND T1.CCN='CHCIDG'
    GROUP BY T1.ITEM"
      

  2.   

    SELECT T1.ITEM,SUM(T1.ACT_COST21) COST,SUM(T1.COMPLETE_QTY) QTY, 6*QTY AS COST21 FROM GLOVIA_PROD.WO T1,GLOVIA_PROD.WO_COMP T2 where T2.TRAN_DATE BETWEEN TO_DATE('2010-07-01','YYYY-MM-DD') AND TO_DATE('2010-07-31','YYYY-MM-DD') and T2.CCN=T1.CCN and T2.MAS_LOC=T1.MAS_LOC and T2.WO_NUM=T1.WO_NUM and T2.WO_LINE=T1.WO_LINE AND T1.CCN='CHCIDG'GROUP BY T1.ITEM"是不是红色部分出了问题?
    需要子查询
      

  3.   

    别名在字段列表、WHERE、GROUP BY中还不能用
    在ORDER BY中可用