SELECT CNT , TEST1, TEST2
, CASE WHEN TEST1 <> 0 THEN TEST2-TEST1 END AS RESULT
FROM (
SELECT '1' AS CNT, 2 AS TEST1, 10 AS TEST2 FROM DUAL
UNION ALL
SELECT '2' AS CNT, 2 AS TEST1, 20 AS TEST2 FROM DUAL
UNION ALL
SELECT '3' AS CNT, 2 AS TEST1, 30 AS TEST2 FROM DUAL
)
;
위에 쿼리를 실행하면 아래와 같습니다.
TEST1이 0이 아닐때, TEST2 - TEST1을 빼는 쿼리인데요..
이거를 모든 ROW에 다 빼지않고 3개의 ROW에서 한곳만 빼고 싶은데요.. 어떻게 수정해야 할지?
CNT |
TEST1 |
TEST2 |
RESULT |
1 |
2 |
10 |
8 |
2 |
2 |
20 |
18 |
3 |
2 |
30 |
28 |
아래와 같이 ROW에만 빼고 나머지는 안빼는 식으로 쿼리를 수정할려면 어떻게 해야할지?
CNT |
TEST1 |
TEST2 |
RESULT |
1 |
2 |
10 |
8 |
2 |
2 |
20 |
20 |
3 |
2 |
30 |
30 |
|