반응형 MSSQL6 [SQL] 175. Combine Two Tables 목차 문제 Table: Person +-------------+---------+ | Column Name | Type | +-------------+---------+ | personId | int | | lastName | varchar | | firstName | varchar | +-------------+---------+ personId is the primary key column for this table. This table contains information about the ID of some persons and their first and last names. Table: Address +-------------+---------+ | Column Name | Type | +--.. 코딩테스트/SQL 문제풀이 2023. 1. 14. [MSSQL] SQL Server 튜닝 - 조인 목차 시작하며 드디어 조인....! 예전에 정말 간단하게, 단순 구현쪽으로만 조인에 대해 포스팅을 작성했던 적이 있긴 한데, 좀더 자세히 공부해보고자 한다. [MSSQL] JOIN 설명 및 사용법 목차 조인이란? 두개 이상의 테이블이나 베이터베이스를 연결하여 데이터를 검색하는 방법이다. 검색하고 싶은 컬럼이 다른 테이블에 있을 경우 주로 사용하며, 여러 개의 테이블을 마치 하나 earthteacher.tistory.com 왠만하면 LEFT OUTER JOIN 만 사용하자는 내부 규칙이 존재했었어서... 아무튼 크게 신경을 쓰지 않고 조인을 사용했었던 과거의 나를 반성하며 다시 공부를 해봤다. 조인(JOIN)이란? 조인은 관계가 있는 두 개 이상의 테이블을 주어진 조건으로 결합하여 하나의 결과 집합으로 출.. DB 2023. 1. 4. [MSSQL] SQL Server 튜닝 - 실행 계획 목차 시작하며 DB팀과 협업을 하며 자주 이야기하던 키워드가 바로 "실행계획" 이다. 쿼리를 만들고 난 후, 실행계획을 점검해보며 인덱스를 잘 타는지, 쿼리가 잘못되진 않았는지 등등을 체크하곤 하는데, 이번엔 이 부분을 다뤄보고자 한다. 그리고, 지난번 인덱스를 공부하며 사용했던 쿼리들의 실행계획도 재확인해볼 생각이다. 실행 계획(Execution Plan) 이란? 실행 계획은 SQL 구문을 처리하기 위해 사용되는 연산 방법이나 오브젝트를 읽어내는 순서 등이 조합된 일련의 처리 절차이다. 하나의 SQL 구문을 처리하는 실행 계획은 많은 경우의 수로 다양하게 생길 수 있지만, 내부적인 규칙이나 비용을 계산하여 가장 최적이라 판단되는 계획이 선택된다. 그렇다면 옵티마이저는 항상 최선의 실행 계획을 선택할 수.. DB 2022. 12. 27. [MSSQL] SQL Server 튜닝 - 인덱스 목차 인덱스란? 인덱스는 무작위로 저장된 데이터 집합에서 원하는 데이터를 쉽고 빠르게 찾을 수 있도록 제공되는 하나의 오브젝트이다. 즉, 요구 조건에 맞춰 테이블을 검색할 때 테이블 전체를 읽어내며 찾는 것이 아니라, 먼저 인덱스의 키로 조건을 탐색하고 함께 저장된 행의 주소값을 통해 테이블의 다른 열을 참조하는 방식으로 수행된다. 인덱스는 흔히 책의 목차로 비유되는데, 책 속의 많은 내용 중에서 원하는 내용을 찾고자 할 때 목차를 통해 쉽게 페이지 번호를 알아낼 수 있기 때문이다. 책이 두꺼울수록, 목차가 세분화될수록 원하는 내용의 페이지를 정확하게 찾을 수 있으며, 마찬가지로 인덱스도 많은 데이터 안에서 찾으려는 조건이 상세할수록 역할은 더욱 분명해진다. MSSQL에서 인덱스를 생성하는 기본 구문은 .. DB 2022. 12. 20. [MSSQL] JOIN 설명 및 사용법 목차 조인이란? 두개 이상의 테이블이나 베이터베이스를 연결하여 데이터를 검색하는 방법이다. 검색하고 싶은 컬럼이 다른 테이블에 있을 경우 주로 사용하며, 여러 개의 테이블을 마치 하나의 테이블인 것처럼 활용하는 방법. 보통 PK 혹은 FK로 두 테이블을 연결한다. 테이블을 연결하려면 적어도 하나의 칼럼은 서로 공유되고 있어야 한다. INNER JOIN 기준 테이블과 조인한 테이블의 중복된 값을 보여준다. 다시말해, 결과값은 A테이블을 기준으로 A테이블과 B테이블이 모두 갖고 있는 데이터만 검색된다. -- 문법 SELECT (테이블별칭.칼럼, 테이블별칭.칼럼) FROM 기준테이블 별칭 INNER JOIN 조인테이블 별칭 ON 기준테이블별칭.기준키 = 조인테이블별칭.기준키 ... -- 예제 SELECT (A.. DB 2022. 3. 3. [MSSQL] VARCHAR(MAX|N) 길이별 성능차이 및 NVARCHAR와의 성능차이에 관해.. 목차 시작하며 VARCHAR나 NVARCHAR를 선언할 때, 우리는 종종 해당 컬럼의 길이를 어떻게 놓을것인지에 대해서 고민하곤 한다. 확실하게 정해져있는 경우, 고정길이로 선언해주는것이 성능상 더 좋다는것은 자명하지만, 그렇지 않은 경우 갈피를 잡기 어려울 수도 있다. VARCHAR(N) 컬럼에 데이터를 저장할땐, 물리적으로 같은 방식이 사용되며 저장된다. 이 말은, 어떤 특정한 동작 없이 블록에 바로 쓰인다는것이다. 하지만, VARCHAR(MAX) 컬럼에 저장하는 경우, TEXT타입처럼 다뤄지게되어 저장을 위한 추가적인 절차가 필요하게된다. (단, 저장되는 데이터의 길이가 8000바이트 이상인 경우에만 해당된다.) 8000바이트 이상인 경우, 오버플로우가 발생하게 되는데 이를 out of row 라고.. DB 2022. 2. 8. 이전 1 다음 💲 추천 글 반응형