SMALL

공부/MSSQL 3

MSSQL ROW_NUMBER()정리

MSSQL ROW_NUMBER 함수 ROW_NUMBER 즉, 행 번호를 매기기 위한 함수이다. ​ MSSQL에 있는 API DOC 문서를 보면 존재하지 않는 이미지입니다. 이렇게 나와 있다. PARTITION BY는 구역을 정해주는 것이다. GROUP BY와 비슷하다고 보면 될 것 같다. 서브쿼리에는 ORDER BY를 사용할 수 없는데 이럴 때도 ROW_NUMBER를 이용한다. 예제를 가져와 보았다. 데이터는 밑의 예제 데이터로 채워두었다. ​ 예제 데이터 DECLARE @TEMP TABLE ( NAME NVARCHAR(50), OCCUPATION NVARCHAR(50) ) INSERT INTO @TEMP SELECT 'Ashley' , 'Professor' UNION ALL SELECT 'Samanth..

공부/MSSQL 2023.08.17

MSSQL PIVOT

PIVOT이라 함은 행을 열로 바꾸는 것을 의미한다. 만약 아래와 같은 테이블이 있다고 가정해보자. 과일이름 과일 개수 사과 10 바나나 20 샤인머스캣 30 복숭아 10 레몬 20 귤 30 오렌지 10 예제 데이터는 아래와같이 생성했다. DECLARE @TEMP TABLE ( FRUIT_NAME NVARCHAR(20), BUY_AMT INT ) INSERT INTO @TEMP VALUES('사과',10) INSERT INTO @TEMP VALUES('바나나',20) INSERT INTO @TEMP VALUES('샤인머스캣',30) INSERT INTO @TEMP VALUES('복숭아',10) INSERT INTO @TEMP VALUES('레몬',20) INSERT INTO @TEMP VALUES('귤'..

공부/MSSQL 2023.08.17

MSSQL Scalar subquery

Subquery - SQL문 안에 있는 SQL문을 의미한다. ● 소괄호로 감싸 사용한다. ● 서브쿼리 안에서는 ORDER BY를 사용하지 못한다. Scalar subquery - 한 레코드에 한 값만을 반환하는 서브쿼리를 의미한다. ● 조인 키 값의 종류가 한정적이고 동일한 것이 많을 때 주로 사용한다. ● 장점으로는 캐시효과. 단점으로는 반복수행이다. ● 캐시효과로 인해 데이터가 적을 때 유리하지만 데이터가 많을 때는 반복수행으로 오히려 성능이 더 떨어진다. Hackerrank의 New Companies를 예제로 하였다. New Companies | HackerRank Find total number of employees. www.hackerrank.com 예제 데이터는 밑에 준비해두었다. DECLA..

공부/MSSQL 2023.08.17
LIST