SUM(DECODE(SIGN(point), 1, 1, 0)) 해당 쿼리 뜻은?
이 식은 Oracle/CUBRID 계열에서 자주 쓰는 “조건부 카운트” 패턴입니다.전체 식SUM(DECODE(SIGN(point), 1, 1, 0))한 줄 의미point 값이 0보다 큰 행의 개수를 센다1️⃣ 안쪽부터 해석🔹 SIGN(point)point > 0 → 1point = 0 → 0point 🔹 DECODE(SIGN(point), 1, 1, 0)SIGN(point) = 1 이면 → 1그 외(0, -1, NULL 포함) → 0👉 즉,point > 0 → 1point ≤ 0 → 02️⃣ 바깥 SUM(...)SUM(1 or 0)→ 1의 개수를 전부 더함✅ 최종 의미SUM(DECODE(SIGN(point), 1, 1, 0))👉 point가 양수(> 0)인 행의 개수📊 예제 데이터poin..
IT/DB
2026. 1. 14. 14:36