结论(以innodb为例) a、非聚簇索引存储了对主键的引用,如果select字段不在非聚簇索引内,就需要跳到主键索引(上图中从右边的索引树跳到左边的索引树),再获取select字段值 b、如果非聚簇索引值重复率高,那么查询时就会大量出现上图中从右边跳到左边的情况,导致整个流程很慢 ...
问题描述: 创建了一个学生表 student ,其中的性别字段语句如下:ALTER TABLE student ADD sex ENUM 男 , 女 , 保密 NOT NULL DEFAULT 男 .报错:ERROR HY : Column sex has duplicated value in ENUM 经过查询时因为编码方式的错误,重新设置表的编码方式,如下: . 修改表的编码方式:ALTE ...
2018-12-07 16:03 0 1712 推荐指数:
结论(以innodb为例) a、非聚簇索引存储了对主键的引用,如果select字段不在非聚簇索引内,就需要跳到主键索引(上图中从右边的索引树跳到左边的索引树),再获取select字段值 b、如果非聚簇索引值重复率高,那么查询时就会大量出现上图中从右边跳到左边的情况,导致整个流程很慢 ...
关于区分度不高的字段,比如性别,比如状态字段,是否应该建索引? 只有2种取值的字段,建了索引数据库也不一定会用,只会白白增加索引维护的额外开销,因为索引也是需要存储的,所以插入和更新的写入操作,同时需要插入和更新你这个字段的索引的.所以说,唯一性太差的字段不需要创建索引,即便用于where ...
终于暂时闲下来了,一个项目加班加点一年多,前面太忙就顾不上博客了,慢慢的就懈怠了,最近算是暂时闲下来了,项目已经验收进入后期维护阶段,每天空余的时间也多了,想重新拾起博客,不求写什么高深的东西,以后就尽量就每次自己遇到的问题,并把解决方法在这里记录一下,可能显得很简单不适合他人看,但是就当自己日记 ...
问题是: 数据库有一个表 code,里面有个点击量字段click_num和一个类别字段kind以及其它信息字段, 现在要搜出每个类别中点击量最大的那条记录,如果是10个类别,那么结果应该是10条记录, 如果最大点击量有两个相同的只要一条。 经过N次搜索,N次检测网上的解决SQL语句,终于 ...
数据库有一个表 Employee,里面有个点击量字段Salary和一个类别字段DepartmentId以及其它信息字段, 现在要搜出每个类别中Salary最大的那条记录,如果是10个类别,那么结果应该是10条记录, 如果最大Salary有两个相同的则全部保留: 更高效,很好理解 ...
在sql的优化中,会有同学提到一点:使用enum字段类型,代替其他tinyint等类型。以前这也是不少人喜欢优化的,但是现在细想,是非常不合理的。 优点: 1.可以设置区间范围,比如设置性别:1男2女3未知。如果这是出现一个非1、2、3类型的,一眼就是脏数据了。 缺点 ...
问题描述:在docker容器创建oracle的表空间遇到该问题,导致原因是文件夹的执行权限不足导致。 问题: create tablespace prod datafile '/data/oracle_date/prod01.dbf' size 5m*ERROR at line ...
Django通过model层不可以创建数据库,但可以创建数据库表,以下是创建表的字段以及表字段的参数。 一、字段 1、models.AutoField 自增列= int(11) 如果没有的话,默认会生成一个名称为 id 的列,如果要显示的自定义一个自增列,必须将给列设 置为主 ...