在 SQL Server 2008 中计算表行数的有效查询是什么
最佳答案
为了获得准确的答案,在规范化数据库中获取表中准确的行数的明智方法是执行:
select count(*) from table;
对于没有任何索引的表,数据库会进行全表扫描。如果您为非空列建立了索引,数据库可能会使用(可能小得多的)索引来解析您的查询。
如果您需要更快的解决方案,则必须跟踪表格中的行数,而不必求助于对行本身进行计数。例如,您可以在另一个表中自己执行此操作(作为您精心设计的 API 的一部分或通过使用触发器等)或为此目的创建一个*索引 View 。
但是,如果您只需要一个近似值,并且快速得到答案很重要,其他人已经展示了通过使用字典来做到这一点的方法(John、Martin)
*免责声明:我实际上并没有在 SQL Server 中使用索引 View ,我只是阅读文档并假设它们可以做与 Oracle 中的物化 View 相同的事情。
关于sql - 在 SQL Server 2008 中计算表行数的有效查询是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4359704/