https://coding-factory.tistory.com/category/DB/MSSQL?page=2
CREATE TABLE test(
id INT NOT NULL,
name CHAR(10) NULL
);
0. 트랜잭션
BEGIN TRAN
ROLLBACK TRAN
COMMIT TRAN
1. INSERT
01. 기본 입력
- 만약에 전체 컬럼의 값을 순서대로 입력한다면 컬럼 명을 기입하지 않아도 된다
- 부분 입력이라던지 순서를 임의로 결정한다면 테이블명 뒤에 컬럼명을 기입해주면 된다
INSERT INTO test(id, name) VALUES(1, 'a');
INSERT INTO test VALUES(2, 'b');

02. 다른 테이블의 데이터 입력
CREATE TABLE test2(
id INT NOT NULL,
name CHAR(10) NULL
);
INSERT INTO test2(id, name)
SELECT id, name FROM test;

- 컬럼이 동일 시 한번에 전체 컬럼 데이터 입력
INSERT INTO test2
SELECT * FROM test;

2. SELECT
01. 기본 조회
- * 을 사용하여 전체 데이터 조회 또는 특정 컬럼 조회
SELECT * FROM test;
SELECT id, name FROM test;

02. WHERE 조건문
-- 이름이 a인 데이터 조회
SELECT * FROM test WHERE name = 'a';
-- id가 홀수인 데이터 조회
SELECT * FROM test WHERE id %2 = 1;
-- id가 홀수이고 이름이 a인 데이터 조회
SELECT * FROM test WHERE id %2 = 1 AND name = 'a';

03. LIKE(~로 시작하거나 포함하거나 끝나는 조건 데이터 출력)
- % 사용
- insert into test values(3, '게스트');
insert into test values(3, '게스트');
-- 이름이 '게'로 시작하는 데이터 조회
SELECT * FROM test WHERE name LIKE '게%';
-- 이름이 '스'를 포함하는 데이터 조회
SELECT * FROM test WHERE name LIKE '%스%';
-- 이름이 '트'로 끝나는 데이터 조회
SELECT * FROM test WHERE name LIKE '%트';

04. IN(~이거나)
SELECT * FROM test WHERE id IN (1, 3);

05. BETWEEN AND(~부터 ~까지)
-- 아이디가 1부터 3까지인 데이터 조회
SELECT * FROM test WHERE id BETWEEN 1 AND 3;

3. UPDATE SET
01. 기본 업데이트
- 업데이트 시 조건 WHERE을 안주고 없데이트하면 전체 데이터가 수정 된다
UPDATE test SET name = 'aa' WHERE name = 'a';

4. DELETE FROM
01. 기본 딜리트
- UPDATE와 동일하게 조건이 없으면 전체 데이터 삭제
DELETE FROM test WHERE name = '게스트';
