使用 MySQL 我知道可以从 SELECT 创建临时表: Create a temporary table in a SELECT statement without a separate CREATE TABLE
我还知道可以在临时表中创建自动增量: Auto Increment in Temporary Table
我想同时执行这两项操作:从 SELECT 语句创建临时表,并且我希望临时表具有自动增量列。
可以这样做吗?
最佳答案
如果要创建带有行号列的临时表,则使用变量:
create temporary table temp as
select (@rn := @rn + 1) as seqnum, t.*
from t cross join
(select @rn := 0) vars;
对于新的插入
,这不会自动递增。如果需要,您需要更改表定义。
关于MySQL 仅从 SELECT 创建具有自动增量的临时表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26788445/