sql server _ 산술함수
[기타SQL]/MS-SQL 2015. 12. 7. 19:01 |ex)
총합 또는 중간 합계가 필요하다면 GROUP BY 절과 함께 ROLLUP 또는 CUBE를 사용하면 된다. SELECT num, groupName, SUM(price*amount) AS [비용] FROM buyTbl GROUP BY ROLLUP (groupName, num) ; num은 Primary Key이며, 그룹화되지 않게 하는 효과를 위해서 넣어 준 것이다. 만약 소합계 및 총합계만 필요하다면 다음과 같이 num을 빼면 된다. SELECT groupName, SUM(price*amount) AS [비용] FROM buyTbl GROUP BY ROLLUP (groupName) ; |
7) GROUPING_ID() : 한눈에 데이터인지 합계인지를 알고 싶을 때 사용하는 함수로, 함수의 결과가 0이면 데이터, 1이면 합계를 위해 추가된 열이라고 보면 된다.
SELECT groupName, SUM(price*amount) AS [비용], GROUPING_ID(groupName) AS [추가행여부] FROM buyTbl GROUP BY ROLLUP(groupName) ; |
ex) 물품별 소합계 및 색상별 소합계를 모두 보고 싶은경우. SELECT prodName, color, SUM(amount) AS [수량합계] FROM cubeTbl GROUP BY CUBE (color, prodName) ; |
'[기타SQL] > MS-SQL' 카테고리의 다른 글
sql server_ 날짜 및 시간함수 정리 (0) | 2015.12.14 |
---|---|
sql server_문자함수 (0) | 2015.12.14 |
sql server _ 변수 활용 (0) | 2015.12.07 |
SQL Server architecture (0) | 2015.12.04 |
SQL server 시스템 데이터베이스 (0) | 2015.10.15 |
SQL server 2012 설치 (0) | 2015.10.15 |