답변:
CREATE TEMPORARY TABLE IF NOT EXISTS table2 AS (SELECT * FROM table1)
http://dev.mysql.com/doc/refman/5.7/en/create-table.html에 있는 매뉴얼에서
테이블을 작성할 때 TEMPORARY 키워드를 사용할 수 있습니다. 임시 테이블은 현재 세션에 표시 되고, 자동 삭제 세션이 폐쇄 될 때. 이는 서로 다른 두 개의 세션이 서로 충돌하지 않거나 동일한 이름의 TEMPORARY가 아닌 기존 테이블과 동일한 임시 테이블 이름을 사용할 수 있음을 의미합니다. (기존 테이블은 임시 테이블이 삭제 될 때까지 숨겨집니다.) 임시 테이블을 작성하려면 CREATE TEMPORARY TABLES 권한이 있어야합니다.
create table t as select ... limit 0; alter table t engine=memory; insert into t select ...
.. 또는 "새 테이블의 기본 엔진"을 변경할 수 있습니다. 세션 수준 변수 에서이 작업을 수행 할 수 있다고 생각합니다. 더 좋은 방법은 오른쪽 상단의 질문하기 버튼을 사용하는 것입니다.
CREATE TEMPORARY TABLE IF NOT EXISTS table2 LIKE table1
당신은 데이터, 단지 구조를 복사 할 해달라고하면
임시 테이블에 인덱스 를 추가 해야하는 경우 psparrow의 답변 외에도 다음을 수행하십시오.
CREATE TEMPORARY TABLE IF NOT EXISTS
temp_table ( INDEX(col_2) )
ENGINE=MyISAM
AS (
SELECT col_1, coll_2, coll_3
FROM mytable
)
그것은 또한 작동 PRIMARY KEY
이 구문을 사용하십시오.
CREATE TEMPORARY TABLE t1 (select * from t2);
CREATE TEMPORARY TABLE IF NOT EXISTS to_table_name AS (SELECT * FROM from_table_name)
temporary
그렇게 단어를 추가했다create temporary table mytable as select ...
.