IT/SQLD
[MS-SQL] SSMS SQL Server Management Studio 쿼리문 자동 들여쓰기 방법
[MS-SQL] SSMS SQL Server Management Studio 쿼리문 자동 들여쓰기 방법
2023.10.171. 기존 SSMS 의 문제점 이렇게 데이터 안에 SP가 담기게 되면 내용을 알아보기가 힘들다는 문제가 있음 (이렇게 한 줄로 쭉- 나옴) 이걸 일일히 수작업으로 엔터쳐서 구분지어줄 수 없는 노릇임 2. 자동으로 정렬해주는 툴은 없을까? https://github.com/TaoK/PoorMansTSqlFormatter/releases/tag/1.6.16 Release SSMS only - Fix Dependency Issues · TaoK/PoorMansTSqlFormatter The formatter logic is still exactly the same as 1.6.13 (and the version before that), but there were some SSMS installation iss..
2016.3.5 기출문제
2016.3.5 기출문제
2016.03.05---------------------------------------------------------------------------------------------------- 1절 데이터 모델링의 이해 18p : 비유연성 설명.(보기 : 중복,비유연성,비일관성,일관성) 20p : 물리적 데이터 모델링 설명. 34p : 좋은 데이터 모델의 요소. (완전성, 중복배제, 업무규칙, 데이터재사용, 의사소통, 통합성) 51p : 속성의 명명 1.2.3.4 번 중 틀린것 59p : 관계 체크사항. 4가지 ---------------------------------------------------------------------------------------------------- 2절 데이터 모델과 성능 9..
SQLD 5장 ] 요약 & 연습문제
SQLD 5장 ] 요약 & 연습문제
2016.03.041절 : 옵티마이저와 실행계획 사용자의 질의를 최적의 실행 방법으로 결정하게 하는 것이 바로 옵티마이저의 역할이다 옵티마이저는 규칙기반 옵티마이저와 비용기반 옵티마이저로 나눌 수 있다. 규칙기반 옵티마이저 - 우선규칙에 따라 실행계획 생성 비용기반 옵티마이저 - 필요한 최소비용 계산해서 실행계획 생성 비용기반 옵티마이저의 구성요소 1.질의변환기 2.대안계획 생성기 3.비용예측기 4.딕셔너리 실행계획 정보의 구성요소 1.조인순서 2.조인기법 3.액세스기법 4.최적화정보 5.연산 2절 : 인덱스 기본 인덱스의 목적은 검색 성능의 최적화이지만, DML 작업에 대해서는 인덱스도 같이 따라서 움직이기 때문에성능이 떨어진다. B-TREE 인덱스는 일치 검색, 범위 검색 에 모두 적합한 구조이다.테이블에 액세스하는 ..
SQLD 최신 기출문제
SQLD 최신 기출문제
2016.03.04❏ 정규화 하면서 테이블을 분리시킬 때 1:1로할껀지. 1:M으로 할건지 ❏ NVL, NULLIF, COALESCE ❏ 쿼리 주고 결과값 예측 ❏ 그룹함수, 윈도우함수 다 쓸줄 알아야함. 그냥 함수란 함수는 다 알고있어야함. ❏ 절차형 SQL 프로시저,트리거,사용자함수 만들기 (끝에 END;) ❏ 비용기반 옵티마이저 구성요소, 옵티마이저의 개념 ❏ 인덱스 스캔, 전체 테이블 스캔 차이점 ❏ NL JOIN, HASH JOIN, MERGE JOIN 그림 순서 ❏ SQL 문을 빠르게 시간내에 해석할 수 있는 능력. 예) 회사원 사원 번호를 나타내는 SQL 문은? 예) 위 SQL 문과 동일한 결과를 나타내는 SQL 문은? ❏ 개요나 정의 지나치지 말기. 예) 데이터베이스의 원자성 ❏ SQL의 역사 ❏ SQL에 ..
SQLD 4장 ] 요약 & 연습문제
SQLD 4장 ] 요약 & 연습문제
2016.03.031절 : 표준 조인 ANSI/ISO 표준 SQL 에서 규정한 INNER JOIN, NATURAL JOIN, USING 조건절, ON 조건절, CROSS JOIN, OUTER JOIN 문법을 통해 사용자는 테이블 간의 JOIN 조건을 FROM 절에서 명시적으로 정의할 수 있다. 2절 : 집합 연산자 두 개 이상의 테이블에서 JOIN 을 사용하지 않고 값을 건드려보겠다. 쿼리와 쿼리 사이에 집합연산자를 둔다.UNION 합집합, UNION ALL 확장된 합집합, INTERSECT 교집합, EXCEPT/MINUS 차집합 3절 : 계층형 질의와 셀프 조인 테이블 안에 계층형 데이터가 존재하는 경우(사원의 매니저) 데이터를 조회하기 위해서 계층형 질의를 사용한다. 셀프 조인이란 동일 테이블 사이의 조인을 말하며, ..
SQLD 3장 ] 요약 & 연습문제
SQLD 3장 ] 요약 & 연습문제
2016.03.031절 : 관계형 데이터베이스 개요 데이터들의 집합에서 필요로 하는 데이터를 꺼내서 조회하고.. 입력/수정/삭제 하는 행위를 통해사용자는 데이터베이스와 대화하게 된다(?!). SQL (Structured Query Language) 은 이러한 대화를 가능하도록매개 역할을 한다. SQL 은 관계형 데이터베이스의 데이터 정의, 조작, 제어 를 위해 사용하는 언어이다 2절 : DDL 테이블은 CREATE TABLE 생성, ALTER TABLE 수정, DROP TABLE 삭제, RENAME TABLE 재명명. 3절 : DML INSERT INTO 입력, UPDATE 수정, DELETE 삭제, SELECT 조회 4절 : 대량 데이터에 따른 성능 트랜잭션은 ALL or NOTHING. COMMIT 트랜잭션 완료, R..
SQLD 2장 ] 요약 & 연습문제
SQLD 2장 ] 요약 & 연습문제
2016.03.021절 : 성능 데이터 모델링의 개요 성능 데이터 모델링이란 데이터베이스 성능향상을 목적 으로 설계단계의 데이터 모델링 때부터 정규화, 반정규화, 테이블통합, 테이블분할, 조인 구조, PK, FK 등의 여러가지 성능 과 관련된 사항 가지고 데이터 모델링에 반영될 수 있도록 하는 것으로 정의된다. 2절 : 정규화와 성능 설계를 할 때 정규화를 하는것은 기본적으로 데이터에 대한 중복성을 제거하여 주고, 데이터가 관심사별로처리가 되는 경우가 많기 때문에 성능이 향상되는 특징을 가지고 있다. 설계단계에서 무조건 반정규화는 안되며 기본적으로 정규화된 데이터 모델을 생성하도록 노력해야 한다. 3절 : 반정규화와 성능 데이터 무결성이 깨질 수 있는 위험을 무릅쓰고 데이터를 중복하여 반정규화를 적용하는 이유는.. 데이터..
SQLD 1장 ] 요약 & 연습문제
SQLD 1장 ] 요약 & 연습문제
2016.03.021절 : 데이터 모델의 이해 일반적으로 모델링이라고 하는 개념은 일정한 표기법에 의해 자연의 현상, 업무적인 현상 등을 형상화 하는 것.데이터모델링은 데이터베이스 구축을 위한 분석과 설계의 핵심도구 이다. 데이터모델링에서 가장 중요한 핵심개념은 엔터티, 속성, 관계 이다. 2절 : 엔터티 데이터베이스를 구축할때 분석/설계 하는 관점에서 엔터티는 "업무에 필요하고 유용한 정보를 저장하고 관리하기 위한 집합적, 영속적 으로 존재하는 단위" 로 정의된다. 엔터티를 정의할 때 중요한 특징(속성의 존재, 2개 이상의 인스턴스 등)이 있다. 엔터티를 분류할때는 기본엔터티, 중심엔터티, 행위엔터티 로 구분한다. 3절 : 속성 속성이란 "업무에서 필요로 하는 엔터티에서 관리하고자 하는 최소의 데이터 단위" 라고 정의된..
SQLD 5-3 ] 조인 수행 원리
SQLD 5-3 ] 조인 수행 원리
2016.03.01❏ 조인 수행 원리 - 조인은 두 개 이상의 테이블을 하나의 집합으로 만드는 연산이다. 조인 기법은 두 개의 테이블을 조인할 때 사용할 수 있는 방법이고 종류로는 NL Join, Hash Join, Sort Merge Join 이 있다. ❏ NL JOIN - 프로그래밍에서 사용하는 FOR 문과 유사한 방식으로 조인을 수행한다. 반복문 외부에 있는 테이블을 선행테이블(외부테이블), 반복문 내부에 있는 테이블을 후행테이블(내부테이블) 이라고 한다. FOR 선행 테이블 읽음 → 외부 테이블(Outer Table) FOR 후행 테이블 읽음 → 내부 테이블(Inner Table) (선행 테이블과 후행 테이블 조인) 먼저 선행 테이블의 조건을 만족하는 행을 추출 하고. 후행 테이블을 쭉 훑어보면서 조인을 수행한다...
SQLD 5-2 ] 인덱스 기본
SQLD 5-2 ] 인덱스 기본
2016.03.01❏ 인덱스 특징과 종류 - 인덱스는 원하는 데이터를 쉽게 찾을 수 있도록 돕는 책의 찾아보기와 유사한 개념이다. 목적은 검색 성능의 최적화 이다. DML 작업은 테이블과 함께 인덱스도 같이 변경해야 하기 때문에 오히려 느려질 수도 있다는 단점이 있다. (따라오기 때문에) ❏ 트리 기반 인덱스 - 가장 일반적인 인덱스는 B-트리 인덱스 이다. Root Block : 대장 Branch Block : 분기를 목적으로 한다. 다음 단계의 블록을 가리키는 포인터를 가지고 있다. Leaf Block : 제일 말단 Leaf Block 은 인덱스를 구성하는 칼럼의 데이터와 위치를 가리키는 식별자(RID, Record Identifier/Rowid) 로 구성되어 있다 인덱스 데이터는 인덱스를 구성하는 칼럼의 값으로 정렬..
SQLD 5-1 ] 옵티마이저와 실행계획
SQLD 5-1 ] 옵티마이저와 실행계획
2016.03.01❏ 옵티마이저 - 옵티마이저는 사용자가 질의한 SQL 문에 대해 최적의 실행 방법을 결정하는 역할을 수행한다 여러개의 방법 중.. 음.. 이게 제일 좋겠군! 하고 결정하는애. 그런데, SQL 문을 실행 해보고 이게 빠르군. 저게 빠르군 하는게 아니라서.. 실행 하기 전에 결정해야 하는 어려움이 있다. 결정하는 방식에는 규칙기반 옵티마이저 / 비용기반 옵티마이저 로 구분할 수 있다. 현재 대부분은 비용기반 옵티마이저만 제공한다고 한다. ❏ 규칙기반 옵티마이저 - 규칙기반 옵티마이저는 규칙(우선 순위) 를 가지고 실행계획을 생성한다. 순위 엑세스 기법 설명 1 Single Row By Rowid ROWID에 의한 단일 로우 2 Single Row By Cluster Join 클러스터 조인에 의한 단일 로우 ..
SQLD 4-8 ] 절차형 SQL
SQLD 4-8 ] 절차형 SQL
2016.02.29❏ 절차형 SQL 개요 - 일반적인 개발 언어처럼 SQL 도 절차 지향 적인 프로그램이 가능하도록 제공하고 있다. ORACLE : PL/SQL DB2 : SQL/PL SQL SERVER : T-SQL 절차형 SQL 을 이용하여 만들수 있는 저장 모듈인 PROCEDURE / USER DEFINED RUNCTION / TRIGGER 에 대해 알아보자! ❏ PL/SQL - BLOCK 구조로 되어 있고, BLOCK 내에는 DML 문장과, QUERY 문장, 절차형 언어(IF, LOOP) 등을 사용할 수 있다. 1. PL/SQL 은 BLOCK 구조로 되어 있어 각 기능별 모듈화가 가능하다 2. 변수, 상수 등을 선언하여 SQL 문장 간 값을 교환한다 3. IF, LOOP 등의 절차형 언어를 사용하여 절차적인 프로그..