update TD_IMPORTANT_EXP_DATA set(sum_val, sum_qty, sum_unit)=
(SELECT (SELECT SUM(VAL)
FROM TD_IMPORTANT_EXP_DATA
WHERE YEAR = A.YEAR AND MONTH <= A.MONTH) AS sum_val,
(SELECT SUM(QTY1)
FROM TD_IMPORTANT_EXP_DATA
WHERE YEAR = A.YEAR AND MONTH <= A.MONTH) AS sum_qty,
(SELECT SUM(VAL) * 1.0 / SUM(QTY1)
FROM TD_IMPORTANT_EXP_DATA
WHERE YEAR = A.YEAR AND MONTH <= A.MONTH) AS sum_unit
FROM TD_IMPORTANT_EXP_DATA A)不知道为什么总是说第一行‘(’附近有错误。请各位帮忙看下。
(SELECT (SELECT SUM(VAL)
FROM TD_IMPORTANT_EXP_DATA
WHERE YEAR = A.YEAR AND MONTH <= A.MONTH) AS sum_val,
(SELECT SUM(QTY1)
FROM TD_IMPORTANT_EXP_DATA
WHERE YEAR = A.YEAR AND MONTH <= A.MONTH) AS sum_qty,
(SELECT SUM(VAL) * 1.0 / SUM(QTY1)
FROM TD_IMPORTANT_EXP_DATA
WHERE YEAR = A.YEAR AND MONTH <= A.MONTH) AS sum_unit
FROM TD_IMPORTANT_EXP_DATA A)不知道为什么总是说第一行‘(’附近有错误。请各位帮忙看下。
SET sum_val = ( SELECT SUM(VAL)
FROM TD_IMPORTANT_EXP_DATA
WHERE YEAR = A.YEAR
AND MONTH <= A.MONTH
) ,
sum_qty = ( SELECT SUM(QTY1)
FROM TD_IMPORTANT_EXP_DATA
WHERE YEAR = A.YEAR
AND MONTH <= A.MONTH
) ,
sum_unit = ( SELECT SUM(VAL) * 1.0 / SUM(QTY1)
FROM TD_IMPORTANT_EXP_DATA
WHERE YEAR = A.YEAR
AND MONTH <= A.MONTH
)
update TD_IMPORTANT_EXP_DATA
set sum_val=(SELECT SUM(VAL) FROM TD_IMPORTANT_EXP_DATA WHERE YEAR = A.YEAR AND MONTH <= A.MONTH),
sum_qty=(SELECT SUM(QTY1) FROM TD_IMPORTANT_EXP_DATA WHERE YEAR = A.YEAR AND MONTH <= A.MONTH),
sum_unit=(SELECT SUM(VAL) * 1.0 / SUM(QTY1) FROM TD_IMPORTANT_EXP_DATA WHERE YEAR = A.YEAR AND MONTH <= A.MONTH)
SET sval= (select (SELECT SUM(VAL)
FROM TD_IMPORTANT_EXP_DATA
WHERE YEAR = A.YEAR AND MONTH <= A.MONTH)
FROM TD_IMPORTANT_EXP_DATA A )
这样子还是不行啊,他说第五行的‘(’附近有错误
FROM TD_IMPORTANT_EXP_DATA
WHERE YEAR = A.YEAR AND MONTH <= A.MONTH)
FROM TD_IMPORTANT_EXP_DATA A )大家快帮我看看。我觉得是因为我用了两个括号,可是我的逻辑关系就是循环必须用两个所以真的不知道该怎么改了
2007 1 10 10
2007 2 100 110
2007 3 1000 1110
就是这个样子的
UPDATE a SET sval= (SELECT SUM(VAL) FROM TD_IMPORTANT_EXP_DATA WHERE YEAR = a.YEAR AND MONTH <= a.MONTH)
from TD_IMPORTANT_EXP_DATA a