[DB] SQL SERVER

1. 개요 인덱스 생성 시 데이터 건수에 따라 소요시간이 매우 길어질 수 있다. 벌크 데이터 적재나 갱신같은 경우 단위처리방식으로 끊어서 진행할 수 있어서 진행률을 확인 가능하지만 인덱스의 경우에는 단위처리 방식이 불가능하여 한번 실행 시 쿼리가 멈추지 않고 계속 실행되어야 한다. 오래 수행되는 인덱스일수록 생성이 잘 진행되고 있는지, 루프를 돌며 어딘가에 에러가 발생해 멈춰있는 것이 아닌지 확인하기가 어렵다. 이런 경우 인덱스 생성 진행률을 확인하여 완료시간 또한 추정이 가능하다. (SQL Server 2014 이상에서만 작동) 2. 선행 작업 profile on 혹은 '실제 실행 계획'을 활성화 상태로 변경한다. how to 1) how to 2) set statistics profile on 3. ..
MSSQL 날짜 Convert 기준표 번호 쿼리 결과 코드 0 CONVERT(CHAR(19), DATETIME, 0) 01 02 2000 1:14PM MM DD YYYY H:MM 1 CONVERT(CHAR(10), DATETIME, 1) 01/02/2000 MM/DD/YYYY 2 CONVERT(CHAR(8), DATETIME, 2) 00.01.02 YY.MM.DD 3 CONVERT(CHAR(8), DATETIME, 3) 02/01/00 DD/MM/YY 4 CONVERT(CHAR(8), DATETIME, 4) 02.01.00 DD.MM.YY 5 CONVERT(CHAR(8), DATETIME, 5) 02-01-00 DD-MM-YY 6 CONVERT(CHAR(8), DATETIME, 6) 02 01 00 DD..
USE [DB명] /********************************** 인덱스(S) **********************************/ --TABLE 상세 정보 쿼리 SELECT a.NAME AS table_name, b.NAME AS column_name, c.NAME AS data_type, c.length AS data_length FROM sys.tables a INNER JOIN sys.syscolumns b ON a.object_id = b.id INNER JOIN sys.systypes c ON c.xtype = b.xtype WHERE a.NAME = '테이블명' ORDER BY table_name --통계확인(업데이트날짜, 테이블명, 인덱스명) SELECT Stat..
SET DEADLOCK_PRIORITY 설정값 교착상태 발생시 트랜젹션의 중요도를 지정하는 것 * 설정값 SET DEADLOCK_PRIORITY LOW - 교착상태 발생시 다른 세션의 교착상태 우선순위가 NORMAL, HIGH, -5 보다 큰 경우 현재 세션을 교착상태가 되도록 지정 SET DEADLOCK_PRIORITY NORMAL(default 값) - 교착상태 발생시 다른 세션의 교착상태 우선순위가 NORMAL, 0과 같을 경우 현재 세션을 교착상태가 되도록 지정 SET DEADLOCK_PRIORITY HIGHT - 교착상태 발생시 다른 세션의 교착상태 우선순위가 HIGH, 5와 같을 경우 현재 세션을 교착상태가 되도록 지정 SET DEADLOCK_PRIORITY 정수값 정수값 : -10~10 사이..
SELECT * FROM ( SELECT TOP 100 -- 상위 100건만 조회 QS.creation_time AS creation_time, -- 실행한 시간 SUBSTRING(ST.text,(QS.statement_start_offset/2)+1, ((CASE QS.statement_end_offset WHEN -1 THEN DATALENGTH(st.text) ELSE QS.statement_end_offset END - QS.statement_start_offset)/2) + 1 ) AS statement_text, --SQL ST.text, -- 실행한 SQL QS.total_worker_time, QS.last_worker_time, QS.max_worker_time, QS.min_worker..
1. 클러스터형 인덱스 (Clustered Index) 인덱스 Leaf Node에 실제 데이터를 가짐. ( 📢 흔히 클러스터형 인 덱스를 키워드 아래에 바로 모든 설명이 있는 사전과 비교한다. ) 인덱스 키 값을 기준으로 데이터를 상시 정렬. (통상적으로 PK로 인덱스 키를 잡는다.) = Insert가 발생하면 전체 정렬 필요 테이블 당 1개만 생성가능. (데이터 테이블과 인덱스 테이블이 물리적으로 같음) 클러스터형 인덱스를 생성하는 순간 해당 테이블의 데이터는 Heap 방식이 아닌 B-Tree 구조로 저장된다. create clustered index 이름 on 테이블 (칼럼) 2. 비 클러스터형 인덱스 (Non-Clistered Index) [DEFAULT] Leaf Node에 실제 데이터가 아닌 데..
mewoni
'[DB] SQL SERVER' 카테고리의 글 목록 (4 Page)