使用MySQL 我知道可以从SELECT创建一个临时表: Create a temporary table in a SELECT statement without a separate CREATE TABLE
我也知道可以在临时表中创建自动增量: Auto Increment in Temporary Table
我想同时做两件事:从SELECT语句创建一个临时表,我希望临时表有一个自动增量列。
可以这样做吗?
答案 0 :(得分:2)
如果要创建带行号列的临时表,请使用变量:
create temporary table temp as
select (@rn := @rn + 1) as seqnum, t.*
from t cross join
(select @rn := 0) vars;
这不会为新insert
自动递增。如果您需要,您需要更改表定义。