和SQL SERVER 创建临时表不同 不能直接写 Create table #Test_Table
而是需要在 Create 和 table 之间 加入 TEMPORARY(temporary<临时>) 关键字
CREATE TEMPORARY TABLE TEST_TABLE (
NAME VARCHAR(10) NOT NULL,
AGE INTEGER NOT NULL
)
一个临时表不能在同一条语句中执行两次 例如:
去重复
DELETE FROM TEMP_TESTTABLE WHERE ID NOT IN (SELECT MAX(ID) FROM TEMP_TESTTABLE GROUP BY JOBNO);
上面这句话就会报错:提示不能重复打开表XXX
如果需要去重复的话 可以建一个辅助表 来去除重复
完整的创建和删除可以 这样写:
-- 如果临时表存在就删除临时表
DROP TEMPORARY TABLE IF EXISTS TEMP_REPORT_STANO_QUERY;
-- 创建临时表
CREATE TEMPORARY TABLE TEMP_REPORT_STANO_QUERY
(`SCAN_STAT_ID` INT DEFAULT 0,
`AF_COU` INT DEFAULT 0,
);
-- 删除临时表
DROP TEMPORARY TABLE TEMP_REPORT_STANO_QUERY;