DB / MSSQL
3편
- SQL Server 에서 함수 기반 인덱스 만들기 — 계산 열 + 인덱스SQL Server 에는 Oracle 의 함수 기반 인덱스가 없다. 계산 열(Computed Column)에 인덱스를 거는 방법과, 사용자 함수를 쓸 때 막히는 조건(소유자·SCHEMABINDING·키 길이)을 정리했다.
- Oracle 의 MAX() KEEP (DENSE_RANK LAST) 를 SQL Server 에서 쓰는 법그룹별 최댓값을 가진 행의 다른 열을 가져오는 Oracle KEEP 절을 SQL Server 2022 에서 ROW_NUMBER, FIRST_VALUE, CROSS APPLY, 문자열 결합 트릭으로 옮기는 방법과 각각의 함정.
- EXISTS 서브쿼리에서 별칭을 빼먹으면 테이블이 통째로 지워진다상관 서브쿼리 안의 열 이름이 바깥 테이블이 아니라 서브쿼리 테이블로 해석되어 DELETE 가 전체 행을 지운 사고. SQL Server 에서 DELETE 대상에 별칭 쓰는 법, IN·NOT IN 의 같은 함정까지 정리했다.