sql - 如果列已经按顺序排列,是否需要在列中添加索引?

标签 sql sql-server t-sql

据我所知,索引在列中排列项目以加快搜索操作,但是如果该列已经按字母顺序排序,并且我想在“姓氏”列中查找名称,那么索引是否会改善此中的搜索?案例?

最佳答案

只有聚集索引对数据进行物理排序

无论如何,您不能依赖CLUSTERED INDEX顺序。仅因为您“看到”有序数据,并不意味着它永远如此。

只有在查询中放置 ORDER BY 子句才能保证顺序。

因此,如果您在 WHERE 子句中使用该列,为该列创建索引将加快查询速度。 但请注意,这实际上取决于其他几个因素。

关于sql - 如果列已经按顺序排列,是否需要在列中添加索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29118648/

相关文章:

sql - 我想并行运行两个或多个程序

sql-server - SQL Server 如何在 HAVING 子句中使用 COUNT DISTINCT(*)?

sql - 从日期列表中汇总日期

t-sql - 如何在SQL中计算平均日期出现频率

sql-server - 返回日期为 null 作为 t-sql 中的最大值

sql - 使用 SQL 中的 Pivot 查询进行多个聚合和自定义值

PHP 绑定(bind)通配符

mysql - 使用 DISTINCT(多列)和 MAX(另一列)计算行数

sql - Psql - 生成带有运行总计的系列

asp.net - 如何在asp.net页面中向MySQL数据库中插入数据?