SqlServer为什么自动在主键上建立聚集索引
其实在网上的大部分资料都不推荐聚集索引建立在主键上,觉得这是浪费,理由是聚集索引查询比较快,应该建立在经常查询和具有同一属性值的列上(比如分类),这个好像说的过去。
不过就本人目前处理过的数据(亿级),还没有充分的证据表明聚集建立在非主键上有明显的优势,因为一个表的查询不单是这个聚集索引查询,他还涉及其他查询,其他查询的索引还要依赖于聚集索引才能找到数据,况且表除了查询还有insert,update,delete 每一个操作都可能涉及聚集索引,如果主键不是聚集索引的话,insert 一条记录,update,delete通过主键修改某条记录可能都需要走两步,第一步,先找到主键,在通过主键去找聚集索引,最终才找到数据,如果主键是聚集索引的话,这些操作只需要一步。
当然这也只是本人的分析,不一定正确。
SqlServer为什么自动在主键上建立聚集索引相关推荐
- mysql主键创建非聚集索引_什么是聚集索引,非聚集索引,索引覆盖,回表,索引下推...
聚集索引 我们先建如下的一张表 CREATE TABLE `student` (`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '学号',`name` var ...
- 为什麽我们一般会在自增列或交易时间列上建立聚集索引
为什麽我们一般会在自增列或交易时间列上建立聚集索引? 到新公司上班也有一段时间了,感觉现在的自己才开始慢慢学习SQL~ 看这篇文章之前,大家可以先看一下我之前写的一篇文章 聚集索引表插入数据和删 ...
- MyBatis 3 自动生成 主键 针对不同的数据库(oracle/sqlserver/mysql)
MyBatis自动生成的主键很多数据库支持自动生成主键的数据类型.不过这通常(并不总是)是个私有的特性.SQL Map 通过<insert>的子元素<selectKey>来支持 ...
- [数据库]SQLServer:什么是主键(PK)和外键(FK)?(图解)
一.主键与外键 1.主键是用来唯一地标识一行数据.主键列必须包含唯一的值,且不能包含空值(null). 2.主键可以建立在每张二维表中单列或者多列上. 3.一张二维表上的外键可以引用另一张二维表上对应 ...
- Bootstrap4+MySQL前后端综合实训-Day08-AM【多表查询sql语句、关联数据的假删除、自动增长主键的获取、栏目管理“数据编辑”按钮的实现】
[Bootstrap4前端框架+MySQL数据库]前后端综合实训[10天课程 博客汇总表 详细笔记][附:实训所有代码] 目 录 多表查询sql语句 关联数据的假删除(status状态码/数据可恢 ...
- Bootstrap4+MySQL前后端综合实训-Day04-PM【PowerDesigner 图形化数据库设计软件(设置依赖关系、自动增长主键、生成sql语句)、SQLyog软件(备份数据库)】
[Bootstrap4前端框架+MySQL数据库]前后端综合实训[10天课程 博客汇总表 详细笔记] 目 录 PowerDesigner软件 5张数据表之间的依赖关系图 设置数据表的自动增长主键 ...
- plsql导入数据主键_使用plsql添加数据并自动生成主键
使用plsql添加数据并自动生成主键 步骤如下: 步骤一:新建需要创建的表如: -- Create table create table IRC_SYS_DATADIC ( datadic_id VA ...
- dm数据库无法用序列自动生成主键,无法解析的成员访问表达式【SEQ_STU_CON_NEXTVAL】
报错信息: 无法解析的成员访问表达式[SEQ_STU_CON_NEXTVAL] select SEQ_STU_CON_NEXTVAL 这种错的解决方案,在dm数据库中创建一个序列叫SEQ_STU_CO ...
- SQL DDL 生成建表语句(可自动生成主键约束,字段默认值等)
--获取建表DDL(+主键) declare @tabname varchar(50) set @tabname='sys_log'--表名if ( object_id('tempdb.dbo.#t' ...
最新文章
- Python3学习笔记01-环境安装和运行环境
- EOS 智能合约源代码解读 (5)class contract
- wkwebview 下移20像素_UITableView嵌套WKWebView的那些坑
- 初学者对python的认识_Python初学者列表,python,初识
- php 获取文件给用户下载,php 下载文件/直接下载数据内容
- 80后的你现在有多少资产?
- SMO算法是干什么的?有什么作用?
- 关于KX混响插件:REVERB R详解
- NetSetMan v3.4.1
- 程序员 -- 黎明前凋零的奇葩
- 社交巨人屏蔽Google搜索 Facebook发展强劲拟上市
- 关于物联网时代的工控安全
- 常微分方程在狄利克雷边界条件下的高精度解法——Richardson 外推法与紧差分法
- 3个小球放入4个盒子
- Vue进阶(幺肆捌):Vuex 辅助函数详解
- Tailwind Base
- StumbleuponAnalysis--逻辑回归二元分类
- kvm 安装 windows 虚拟机
- Unity3D 2021.1.2F1 发布了。赋国际版本下载地址。
- linux 下格式化U盘
热门文章
- Linux如何统计进程的CPU利用率
- Android之使用ThumbnailUtils类来获取视频第一帧缩略图
- SpringCloud集成Security安全(Eureka注册中心)
- Java8新特性总结 -7.新API和工具
- [蓝桥杯][2019年第十届真题c/c++B组]后缀表达式(解释sum -= 2*a[i])
- 瓦片经纬度及行列号转换_ArcGIS根据最大最小坐标换算瓦片行列号
- PostgreSQL统计信息的几个重要视图
- uva-10887-枚举
- 谷歌为何会选用TypeScript?
- SpringMVC HandlerMethodReturnValueHandler扩展