MYSQL

프로세스

DB의 프로세스를 관리하는 기능이다.

DB의 쿼리가 실행되지 않고 timeout이 발생하는 경우에 DB 프로세스를 통해 현재 db쿼리가 실행되고 있는 상태를 확인 할 수 있다.

프로세스 확인

show processlist;
select * from information_schema.processlist;

프로세스 킬

kill 'id번호';

임시 테이블

WITH

```
WITH TBL AS
(
    SELECT '철수' AS NAME, 20 AS AGE
    UNION ALL
    SELECT NAME, AGE
    FROM TB1
)

SELECT NAME, AGE FROM TBL;
```

Temporary Table

MYSQL은 temporary table 을 session 이 끝나거나 connection 이 종료되었을 때 자동으로 삭제합니다.
접속한 세션 안에서만 생성하고 사용할 수 있다는 의미입니다.

temporary table 은 오직 접근 가능한 client 만 접근할 수 있습니다. 다른 client들은 오직 특정 client 만 table 을 볼 수 있기 때문에 특별한 오류 없이 같은 이름의 temporary table을 생성할 수 있습니다.
같은 session 에 두개의 temporary tables 는 같은 이름의 table 이 공유될 수 없습니다.

CREATE TEMPORARY TABLE

CREATE TEMPORARY TABLE table_name( 
	SEQ INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY
	,SEQ1 INT
	,SEQ2 INT
);

DROP TEMPORARY TABLE

DROP TEMPORARY TABLE TABLE

Contents