如何提高查询性能是将数据插入到多个表,结合它

时间:2019-01-30 22:12:14

标签: sql sql-server performance sql-server-2012 database-administration

所以在我的第一个表,我只获取的ID。 然后创建和填充多个表变量和通过过滤它:

std

因此结构如下:

where exists(select * from @ID d where d.ID = @TableData.ID) 

有什么办法可以提高性能吗?

我尝试创建#TempTable,但是仍然没有任何改进。

我想也许有一种方法可以在表变量或临时表上创建索引?

1 个答案:

答案 0 :(得分:1)

您可以使用主键创建表变量,但不能使用非聚集索引。

如果需要在临时表上使用索引,则应改用#tempTables。然后,您可以在这些索引上创建索引。使用大型数据集时,#的性能优于@。