可以的,Temporary Table(临时表)是可以创建索引的。
下面分几种常见数据库说明一下:
CREATE INDEXCREATE TEMPORARY TABLE tmp_user (
id INT,
name VARCHAR(50),
INDEX idx_name (name)
);
-- 或
CREATE INDEX idx_id ON tmp_user(id);
✅ 临时表的索引只对当前会话可见
❌ 临时表不能建外键(但能建普通索引)
#临时表 和 ##全局临时表CREATE TABLE #tmp (
id INT PRIMARY KEY,
name VARCHAR(50)
);
CREATE INDEX ix_name ON #tmp(name);
✅ 索引使用和普通表一样
⚠ 会话结束临时表自动销毁
CREATE TEMP TABLE tmp (
id INT,
name TEXT
);
CREATE INDEX idx_name ON tmp(name);
✅ 临时表索引也是临时存在的
CREATE INDEX idx_tmp ON temp_table(col);
✅ Temporary Table 完全可以建索引
✅ 用法和普通表几乎一样
⚠ 临时表的索引生命周期 = 临时表生命周期
如果你说的是某个具体数据库(MySQL / SQL Server / PG / Oracle)或特定使用场景(性能优化 / 分区 / 大量数据),可以告诉我,我可以给你更具体的建议。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。