소리소문 없이... 사랑도 명예도 이름도 남김 없이...
DexCore.net

DataBase/SQL Server 143

테이블 변수

데이터를 한 행씩 처리하는 방법으로 커서를 굉장히 많이 쓴다. 하지만 커서의 경우 대량의 데이터를 처리하기에는 문제가 있는 것도 사실이다. 처음에는 초당 100건씩 처리했다고해서 1만건을 처리하는데 10초가 걸리는 것이 아니다. 짧고 미천한 경험상 커서의 실행 예상 타임은 아래 그래프와 같다. 커서를 쓴다는 것은 굉장히 손쉬운 선택이지만 또한 고통(?)의 길로 밀어넣는 작업이기도 하다. 아래는 Microsoft에서 제공한 MS SQL Server 2000 개발자를 위한 튜닝 가이드에서 발췌한 내용이다. "커서는 내부적으로 임시 테이블을 사용하기 때문에 임시 테이블을 쓴다고 부하가 더 발생하진 않습니다. 오히려 커서의 부가적 기능 때문에 서버 자원을 더 낭비하게..

DataBase/SQL Server 2026.04.30

서브쿼리(SubQuery) 특징

서브쿼리(SubQuery) 특징 o 여러 번의 Select문을 수행하여 얻을 수 있는 결과를 서브쿼리를 이용하여 하나의 쿼리로 결과를 얻을 수 있다. o 메인쿼리가 서브쿼리를 포함하는 종속적인 관계가 있고 메인쿼리보다 먼저 실행된다. o 사용할 때는 () 괄호를 잘 묶어줘야 한다. o 서브쿼리 안에서 Order by 절은 사용할 수 없다. o SELECT, FROM, WHERE, HAVING, ORDER BY, INSERT VALUES절, UPDATE SET절에서 사용할 수 있다. 서브쿼리(SubQuery) 종류 1. 단일 행 서브쿼리 (Single Row SubQuery) 2. 다중 행 서브쿼리 (Multi Row SubQuery) 3. 다중 열 서브쿼리 (Multi Column SubQue..

DataBase/SQL Server 2026.04.30

DBCC CHECKIDENT란 무엇일까?

DBCC CHECKIDENT 명령어에 대한 정리이다. 해당 명령어는 identity(자동증가열)을 초기화시키는데 목적이 있다. 사용 방법은 아래의 예제와 같다. -- 입력한 테이블에서의 IDENTITY 값 확인 DBCC CHECKIDENT('[테이블명]', NORESEED) -- IDENTITY 값 변경 (IDENTITY값이 500으로 변경된다.) DBCC CHECKIDENT('[테이블명]', RESEED, 500) -- IDENTITY 값 초기화 (IDENTITY값을 0으로 초기화 시킨다.) DBCC CHECKIDENT('[테이블명]', RESEED, 0) 위의 예제처럼 identity의 값을 확인 및 수정할 수 있다. Truncate로 테이블을 삭제하면 Identity값이 알아서 초기화가 되는데, D..

DataBase/SQL Server 2026.04.30
728x90
반응형