-
mssql sum에 연산값들이 모두 null값일 때성장과정(dev)/DBMS 2020. 9. 29. 10:46
sum ( isnull( column1, 0 ) )
isnull ( sum( column1 ), 0 )
위의 두줄은 데이터 양이 많을 때 꽤나 차이가 있다.
연산값이 null인 경우 sum에서 제외하고 계산하기 때문에 첫번째 줄처럼 굳이 isnull을 사용할 필요가 없다.
다만, 여기서 궁금해진것은 더하는 모든값이 null일 때는 어떻게 나올까?
sum이라는 함수를 썼기에 모든 값이 null이면 0으로 나올 것을 예상했지만 null값은 아예 제외하고 계산하기 때문에 null이 나오더라.
한마디로
SELECT SUM( AGE) FROM TEST GROUP BY NM_KOR;
여기서 계산하려는 AGE값이 모두 NULL인 경우 쿼리 결과값이 NULL로 나온다.
'성장과정(dev) > DBMS' 카테고리의 다른 글
Oracle 계층형 쿼리 사용하기 (부모 <-> 자식 검색), 성능 확인하기 (0) 2025.03.19 샤드란? 데이터베이스 수평 확장의 핵심 개념! (1) 2024.12.21 DB 시스템에서의 동시성 제어 방법 (1) 2024.12.20 mysql) BIGINT 와 BIGINT UN 의 차이점 (0) 2023.04.14 [mssql 테이블정보 확인] oracle / DESC '테이블명' ---> mssql / ? (0) 2020.10.06