본문 바로가기

MSSQL5

[MSSQL] B-Tree Tree란? Tree에 대한 개념은 이미 알고 있을 것이라 생각하고, 시간 복잡도에 대해 생각해보자. 일반적으로 위의 그림처럼 평균적으로 생긴 Tree에서 탐색에 대한 시간 복잡도는 O(log N)이다, 하지만, 위의 그림처럼 Tree의 형태가 한쪽으로 추욱 늘어진 최악의 경우엔 O(N)이다. 이러한 최악의 경우를 대비해서 Balanced Tree라는 것을 사용한다. Balanced Tree? 말 그대로 "균형잡힌 Tree"로, 위에서 본 Tree 구조의 최악의 경우처럼 트리가 한쪽으로 쏠리지 않게 노드 삽입 및 삭제 시에 특정 규칙에 따라 트리가 재정렬되어 좌 / 우 SubTree의 밸런스를 유지하는 Tree이다. 항상 좌 / 우 SubTree 간에 밸런스를 유지하고 있기 때문에 탐색에 대한 시간 복잡.. 2022. 4. 12.
[MSSQL] 의 Varchar 와 nVarchar의 차이 MSSQL 의 Varchar와 nVarchar의 차이 MSSQL 에서 테이블 설계 시 컬럼 데이터타입 중 Varchar 와 nVarchar 모두 생성이 가능하도록 되어있습니다. 둘 다 문자열을 저장하는 데이터 타입이지만 Varchar와 nVarchar Varchar 1개의 한글문자는 2바이트 사용 1개의 영문 문자는 1바이트 사용 nVarchar 한글 영문 상관없이 1개의 문자당 모두 2바이트씩 사용 만약 ''HelloWords''라는 영문을 사용하면 Varchar(10), nVarchar(10)으로 동일하지만 Varchar는 10바이트를 사용하고 nVarchar는 20바이트를 사용합니다 nVarchar가 더 많은 바이트를 사용하는 이유는 유니코드를 지원하는 데이터형 이기 때문입니다 만약 다국어지원이 필.. 2022. 4. 12.
[MSSQL] 테이블 생성,수정,삭제 (Create, Alter, Drop Table) 데이터베이스 DDL에는 Create(생성), Alter(수정), Drop(삭제)를 시킬 수 있는 명령어가 있습니다. 이 테이블의 구조를 생성, 변경, 삭제를 하는 것이 DDL입니다. CREATE TABLE(테이블 생성) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 --문법 CREATE TABLE 테이블명( 컬럼명 타입(크기) NOT NULL, --널값이 들어갈 수 없음 컬럼명 타입 NULL DEFAULT(값), --초기값 지정 CONSTRAIN PK이름 PRIMARY KEY(컬럼명) --PK설정 ) --예제 CREATE TABLE MY_TABLE( NO_EMP NVARCHAR(10)NOT NULL, -- NULL 값이 들어갈 수 없음 NM_KOR NVARCHAR(40)NOT NULL, --.. 2022. 4. 7.
[MSSQL] Insert문 요약정리 INSERT 문은 테이블 레코드를 삽입하기 위해 사용하는 구문입니다 Insert 문법 1 INSERT INTO 테이블명(칼럼1,칼럼2,칼럼3,....) values(데이터1,데이터2,데이터3,......) cs 1 INSERT INTO My_Table(no_emp,nm_kor,age) values('dz000','홍길동',20) cs Insert문의 사용법은 다음과 같습니다. 다른 테이블의 데이터를 Insert 하는 법 1 2 3 4 5 6 7 8 ---일부 칼럼만 복사 INSERT INTO 복사 될 테이블명(칼럼1,칼럼2,컬럼3,....) SELECT 칼럼1,칼럼2,칼럼3,.... from 복사 할 테이블명 --전체 복사 INSERT INTO 복사 될 테이블명 SELECT * from 복사 할 테이블명.. 2022. 4. 7.