是否有任何限制来限制我们可以在表变量中拥有的记录数?如果是,那么表变量可以容纳的最大数量记录是多少?我必须编写一个存储过程来处理大约1000条记录。我是否需要使用表变量或临时表?表变量在SQL Server中可以具有的最大记录数
5
A
回答
8
因为这样的官方MSDN网站Maximum Capacity Specifications for SQL Server没有为表变量定义此类上限,因为它取决于数据库大小和可用于存储的空闲内存。你也可以参考MSDN论坛上讨论的一样; Maximum Capicity of Table Variable
我是否需要使用表变量或临时表?
您可以使用它们中的任何一个,因为没有关于何时应使用Table变量以及何时使用临时变量的黄金法则。有一些参考这可以帮助理解它更多:
1
你的意思是一个表行?或者你想在一个T-SQL表中使用变量吗?我猜你必须是一个表类型的变量,然后答案是'不'。表格可容纳的限制应仅取决于磁盘的大小。如果您只想将特定数量的行放入表中,那么可以在填充表的查询中使用TOP关键字?如果你在问题中提供了更多的细节,你会得到更好的答案:-)
+0
多个地方引用我通常查询多个表中的数据,并将其放入表变量或临时表中,具体取决于查询过滤后的数据大小。有时候,我会混淆在表变量和临时表之间进行选择。 – bmsqldev
相关问题
- 1. 的SQL Server:最大记录数返回
- 2. 我可以在SQL表中存储的最大记录数是多少?
- 3. SQL Server和MySQL中可工作表的最大数量
- 4. 在SQL Server表中匹配具有可变数量前导零的字段
- 5. 在SQL查询中选择除了最大记录以外的所有记录
- 6. 更改具有外键的表(sql server)中的记录?
- 7. SQL Server中的表变量
- 8. SQL Server 2005表变更历史记录
- 9. 标量最大值在SQL Server中
- 10. 将大量记录插入SQL Server数据库的最快方法是什么?
- 11. 是否有MongoDB的最大记录数?
- 12. 加入具有相同关键变量但具有不同记录数的表
- 13. 在SQL Server表中选择记录
- 14. 将具有大量分数的.Net小数映射到SQL Server
- 15. 什么是插入大量的记录在SQL Server 2008 R2
- 16. 是否可以在Sql Server中的View中设置变量?
- 17. 的SQL Server 2014选择记录与最大功能的其他表不存在
- 18. 在SQL Server 2000中处理记录的可重复子集表
- 19. SQL Server,具有删除与删除临时表与变量表
- 20. 查询以获取最大记录数
- 21. 从SQL Server中的表中获取最新记录
- 22. SQL中的最大数量
- 23. 在SQL Server中计数记录
- 24. 从具有计数表中读取不同的记录sql查询大于3
- 25. SQL在SQL Server中选择最新的记录
- 26. SQL Server中每行中的记录数
- 27. 找到最新的SQL Server记录
- 28. 我的表变量中不存在的SQL显示记录
- 29. 单个记录具有多个表变量值的多个结果T-SQL
- 30. 获取具有SQL Server中列最大值的行
[Table variable row limitation?]的可能重复(http://stackoverflow.com/questions/6945749/table-variable-row限制) – MusicLovingIndianGirl
**请注意**:无论您在表变量中有多少行,查询优化器(缺少更好的信息)将始终假定表变量中只有** 1个单行**,如果您的表变量中有很多行,这可能会导致可怕的错误执行计划。谨慎使用它 - 如果你打算有成千上万的行,我宁愿使用临时表 –
,但临时表的使用会导致在tempdb中增加负载。我也不能尝试cte,因为它需要在代码 – bmsqldev