쵸코코딩 34

MSSQL- ROLLUP / CUBE - GROUPING()

ROLLUP, CUBE에 의해 산출된 통계 결과에서 GROUPING의 인자로 들어가는 컬럼의 값이 NULL일 경우 1, NULL이 아닐 경우 0으로 표기된다. [예제] 1 2 3 4 5 SELECT GROUPING(분류) , 분류, SUM(개수) AS '개수', SUM(금액) AS '금액' FROM A GROUP BY 분류 WITH ROLLUP 위의 예제와 같이 분류 컬럼의 값이 NULL일 경우 GROUPING의 값은 1로 나온다 따라서 ROLLUP, CUBE로 합계를 낼 경우 GROUPING을 통해 NULL로 나온 결과의 값을 '합계'라는 텍스트로 변경해줄 경우 사용할 수 있다. 1 2 3 4 5 6 SELECT CASE WHEN GROUPING(분류) = '1' THEN '합계' ELSE 분류 END..

쵸코코딩/DB 2020.06.19

MSSQL - COUNT() - GROUP BY 없이 Count

1 2 SELECT *, COUNT(*) FROM 테이블명 다음과 같은 쿼리를 실행시키면 메시지 8120, 수준 16, 상태 1, 줄 1 열 '테이블명'이(가) 집계 함수나 GROUP BY 절에 없으므로 SELECT 목록에서 사용할 수 없습니다. 다음과 같은 오류 메시지를 출력한다. [Solution #1] 1 2 SELECT *, COUNT(*) OVER(PARTITION BY 1) FROM 테이블명 [출처] [MSSQL] ROLLUP 그룹 함수, GROUPING [소계, 합계]|작성자 꽁쥐

쵸코코딩/DB 2020.06.19

MSSQL - ROW_NUMBER() - ORDER BY 정렬 없이 순번 부여

ROW_NUMBER() 번호를 ORDER BY 정렬 없이! 매기고 싶다!! 1 2 SELECT ROW_NUMBER() OVER(ORDER BY 1), * FROM 테이블명 위와 같은 쿼리는 다음과 같은 에러메세지가 뜬다. 기간 이동 함수는 ORDER BY 절 식으로 정수 인덱스를 지원하지 않습니다. [Solution #1] 1 2 DECLARE @row INT = 1 -- 의미 없는 변수 SELECT ROW_NUMBER() OVER(ORDER BY @row), * FROM 테이블명 [Solution #2] 1 2 SELECT *, ROW_NUMBER () OVER(ORDER BY (SELECT 1)) FROM 테이블명

쵸코코딩/DB 2020.06.19

MSSQL - ROLLUP / CUBE

SQL표준 함수 분류 1. AGGREGATE FUNCTION : count , sum , avg , max , min 등 각종 집계 함수 2. GROUP FUNCTION : 결산 개념의 업무, 소계, 중계, 합계, 총 합계등 보고서를 만드는 기능 3. WINDOW FUNCTION : 분석함수나 순위함수 같은 데이터 웨어하우스에서 발전한 기능요약 - ROLLUP : 소그룹간 소계 출력 - CUBE : GROUP BY 항목들과 다차원 소계 출력 - GROUPING SETS : 특정항목에 대한 소계 출력 * DECODE함수는 CASE문이랑 동일. * ROLLUP 연산자 - GROUP BY절에 있는 컬럼들을 오른쪽에서 왼쪽의 차례로 그룹들을 생성, 각 그룹에 계산함수를 적용 - GROUP BY절의 결과는 누적 ..

쵸코코딩/DB 2020.06.19

MSSQL - COALESCE()-ISNULL() 축약

COALESCE() 함수 구문 - COALESCE(expression1, …n) 지정한 표현식들 중에 NULL이 아니 첫 번째 값을 반환합니다. 즉 ISNULL()과 친척 관계입니다. 다중 ISNULL() 개념을 적용하고 싶을 때 이를 축약해서 사용할 수 있는 함수인 셈이죠. 온라인 설명서에는 이 함수가 다음과 같은 식이라고 소개합니다. 먼저 간단한 예제를 하나 보죠, 아래와 같이 3개의 변수값을 지정하면 NULL이 아닌 첫 번째 값, @C_Code 값을 반환하게 됩니다. 참고로 이걸 ISNULL()로 표현하면 어떻게 할 수 있을까도 생각해 보실 수 있겠죠. DECLARE @A_Code int = NULL , @B_Code int = NULL , @C_Code int = 10248; -- 다중 ISNUL..

쵸코코딩/DB 2020.06.19

Python-1.Getting Started

[Python] : https://www.python.org/ [Tutorial] 점프 투 파이썬 : https://wikidocs.net/book/1 왕초보를 위한 Python 2.7 : https://wikidocs.net/book/2 [Library] Beautiful Soup : http://www.crummy.com/software/BeautifulSoup/ [Install] 파이썬 공식 홈페이지의 다운로드: http://www.python.org/downloads Latest: 3.8.2 - https://www.python.org/downloads/release/python-382/ [Python Editorl] 비주얼 스튜디오 코드(Visual Studio Code): https://cod..

쵸코코딩/CODE 2020.05.12

C#-10.LINQ(from, where, orderby, select)

using System.Linq; 1. LINQ(Language Integrated Qurey) - '질의통합언어' - 데이터에 대해 질문하는 언어 2. FROM - 검색할 범위 지정(LINQ는 from으로 시작 - foreach(var element in array) = from element in array foreach의 element변수에 실제 array데이타가 저장 되지만, LINQ의 element변수에는 데이터가 저장되지 않고 단순히 'array에 존재하는 요소'의미로 사용 3. WHERE - 데이터조회 조건 4. ORDERBY - 데이터 정렬방법(Default 오름차순 정렬) 5. SELECT- 데이터 검색 결과 - 검색된 데이타 타입은 SELECT절에 의해 결정되며, 무명형식(타입)으로 만..

쵸코코딩/CODE 2020.05.11