2014-09-29 5 views
0

db에 숫자를 기록하려고했지만 열 합계를 삽입 할 수 없습니다. 예 :SQL 서버 테이블의 계산 열 합계

기록 :

check1  check2  check3  sum_number  roll_sum 
    500   510   500   3.3    3.3(should be) 
    490   500   505   -1.6    1.7 (should be) 

하지만 내 롤 합이 항상 NULL입니다. 내가 수동으로 미세 다른 행을 계산 스크립트보다 roll_sum에 첫 번째 숫자를 넣으면

PHP 스크립트는

($sum_number + (SELECT SUM(roll_sum) FROM table_name)) 

입니다하지만. 스크립트를 올바르게 작성하려면 어떻게해야합니까?

select * , 
SUM(sum_number) OVER (ORDER BY fieldName ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)roll_sum 
from table_name 
+1

는 전체 쿼리를 공유 주시겠습니까? 네가 무엇을 요구하는지 이해할 수는 없다. @Mureinik 그 위의 – Mureinik

+0

. 특별한 것은 없지만 3 개의 값과 sum_number를 삽입해야합니다. 그리고 스크립트 기록 roll_sum automaticaly (해야). Logicaly가 작동해야합니다 ... – Klapsius

답변

1

이 시도 절 이상

+0

예 NULL입니다. 내 테이블이 비어 있기 때문에 – Klapsius

+0

위 쿼리를 시도하십시오 –

+0

왜 내 스크립트가 작동하지 않습니까? – Klapsius

0

사용 :

SELECT SUM(Case ROLL_SUM WHEN NULL THEN SUM_NUMBER ELSE ROLL_SUM END AS ROLL_SUM) FROM table_name