MSSQL 에 계산식넣을수는없나요?
본문
a,b,c,d,e,f,g,h,i,j,k,pm,per라는 컬럼이있습니다.
각각
1,2,3,4,5,6,7,8,9,10,+,20 이라는숫자가들어가있구여
pm은 라디오박스로 +,- 선택을할수있습니다.
test.asp 에서 폼값으로 testok.asp로 값을넘겨줍니다.
여기서 pm의값을 IF문으로 걸러냅니다.
pm의값이 + 라면
a,b,c,d,e,f,g,h,i,j,k 라는 컬럼에있는숫자에 본인의값+(본인의값*0.2)를해줍니다 (per컬럼에 들어가있는값 20)
만약 -라면
a,b,c,d,e,f,g,h,i,j,k 라는 컬럼에있는숫자에 본인의값-(본인의값*0.2)를 해줍니다
그다음다시 test.asp로 돌아옵니다.
지금 빨간색으로 되있는부분이 되질않습니다..
예제나 팁좀부탁드립니다.
답변 2
각 필드 별로 case when 돌리시면 됩니다.
select case when pm > 0 then a + (a * 0.2) when pm < 0 then a - (a * 0.2) else a end as a
, case when pm > 0 then b + (b * 0.2) when pm < 0 then b - (b * 0.2) else b end as b
.
.
.
from '테이블'
pm이 0일 때 값이 없어서 pm이 0일 때는 각 필드 값을 그대로 가져오게 했는데 그 부분을 다르게 가져오실
거면 수정하시면 됩니다.
연산식은 a + (a * 0.2) 보다는 a * 1.2, a - (a * 0.2) 보다는 a * 0.8이 나을 듯 합니다.
sql은 표준 ANSI 쿼리를 사용합니다.
특별한 경우가 아니라면 계산식등은 표준규약의 SQL이라면 대부분 비슷합니다.
사용하시는 자세한 DB구조등을 모르겠으나 올리신 내용을 볼때
sum,if,case 등의 연산쿼리를 사용하면 가능할듯합니다.
http://blog.daum.net/_blog/BlogTypeView.do?blogid=0Gpbw&articleno=8006521