본문 바로가기

반응형

프로그래밍/MSSQL

(76)
[MSSQL] 조건절 LIKE 검색 조건 (ESCAPE 특수문자 와일드 카드 (예약어) 검색) WHERE LIKE 에서 사용하는 검색 조건에 대해 알아보자 SELECT 컬럼명 FROM 테이블명 WHERE 컬럼명 LIKE 'A%' SELECT 컬럼명 FROM 테이블명 WHERE 컬럼명 LIKE '%A%' SELECT 컬럼명 FROM 테이블명 WHERE 컬럼명 LIKE '_A%' SELECT 컬럼명 FROM 테이블명 WHERE 컬럼명 LIKE '[ABC]%' SELECT 컬럼명 FROM 테이블명 WHERE 컬럼명 LIKE '[A-D]%' SELECT 컬럼명 FROM 테이블명 WHERE 컬럼명 LIKE '[^A]%' 다음과 같이 여러 검색 조건이 사용된다. 하나씩 알아보도록 하자. 1) A% 'A'로 시작하는 모든 문자열 2) '%A'% 'A'가 포함된 모든 문자열 3) '_A%' 두 번째 문자가 'A..
[MSSQL] PIVOT, UNPIVOT (행렬 변환) 행렬 변환 함수 PIVOT, UNPIVOT PIVOT 행렬 변환 SELECT 컬럼명 FROM 테이블명 PIVOT([집계함수]([집계컬럼명]) FOR [대상컬럼명] IN ([컬럼이될값])) AS 피벗테이블명 집계 함수 : SUM(합계), AVG(평균), COUNT(개수), MAX/MIN(최대/최소) 예제 PIVOT을 적용하여 행렬을 변환해보자 WITH TABLE_A (학년, 반, 점수) AS ( SELECT '1학년', '1반', 100 UNION ALL SELECT '1학년', '2반', 30 UNION ALL SELECT '2학년', '1반', 80 UNION ALL SELECT '2학년', '2반', 90 ) SELECT * FROM TABLE_A 원본 데이터가 보기 불편하니, 아래와 같이 눈에 쉽게..
[MSSQL] DATENAME, DATEPART (요일, 올해 몇번째 날, 주말을 제외한 평일 일수) DATENAME, DATEPART 함수 해당 날짜의 요일 정보 (DATENAME) SELECT DATENAME(DW, GETDATE()) 해당 날짜의 요일 정보 (DATEPART) SELECT DATEPART(DW, '2017-02-05') AS '일요일(1)' , DATEPART(DW, '2017-02-06') AS '월요일(2)' , DATEPART(DW, '2017-02-07') AS '화요일(3)' , DATEPART(DW, '2017-02-08') AS '수요일(4)' , DATEPART(DW, '2017-02-09') AS '목요일(5)' , DATEPART(DW, '2017-02-10') AS '금요일(6)' , DATEPART(DW, '2017-02-11') AS '토요일(7)' DATEP..
[MSSQL] PARTITION BY 테이블 분할 함수 테이블 분할 함수 PARTITION에 대해 알아보자 PARTITION 함수 그룹 내 순위 및 그룹 별 집계를 구할 때 유용하게 사용할 수 있다. SELECT 순위함수() OVER(PARTITION BY 컬럼명 ORDER BY 컬럼명) FROM 테이블명 SELECT 집계함수(컬럼명) OVER (PARTITION BY 컬럼명) FROM 테이블명 순위함수 - ROW_NUMBER - RANK - DENSE_RANK [MSSQL] ROW_NUMBER, RANK, DENSE_RANK 순위함수 집계함수 - SUM(합계) - AVG(평균) - MAX, MIN(최대, 최소) - COUNT(개수) 예제1. 학생들의 등수 매기기 다음과 같은 데이터가 있을때, 이 학생들의 등수를 매기려고 한다. 순위함수인 ROW_NUMBER..
[MSSQL] COMPUTE (별도의 결과 집합으로 출력) COMPUTE 결과를 별도의 결과 집합으로 출력한다. 1 2 SELECT 컬럼명 FROM 테이블명 WHERE 조건 COMPUTE 집계함수(컬럼명) cs 집계 함수 → SUM(합계), AVG(평균), MAX(최대), MIN(최소), COUNT(개수) 예제) 1 2 3 SELECT * FROM A WHERE 분류 = '음식' SELECT SUM(금액) AS 'sum' FROM A WHERE 분류 = '음식' SELECT AVG(금액) AS 'avg' FROM A WHERE 분류 = '음식' cs 1 2 3 SELECT * FROM A WHERE 분류 = '음식' COMPUTE SUM(금액) COMPUTE AVG(금액) cs 위의 두 쿼리 문의 결과는 동일하다. 1 2 SELECT * FROM A WHERE ..

반응형