select * 和 select 字段的速度对比
拿WordPress的数据库做一个对比
SELECT ID,post_title, post_author FROM wp_posts ORDER BY ID LIMIT 100;
OK, Time: 0.023000s
SELECT * FROM wp_posts ORDER BY ID LIMIT 100;
OK, Time: 0.261000s
SELECT `ID` , `post_author` , `post_date` , `post_date_gmt` , `post_content` , `post_title` , `post_excerpt` , `post_status` , `comment_status` , `ping_status` , `post_password`, `post_name` , `to_ping` , `pinged` , `post_modified` , `post_modified_gmt`, `post_content_filtered`, `post_parent` , `guid`, `menu_order`, `post_type`, `post_mime_type`, `comment_count` FROM wp_posts ORDER BY ID LIMIT 100;
OK, Time: 0.231000s
总结
- 字段更少速度更快
- 没有大内容字段查询速度更快,有大内容字段的表需要最优速度时,可以写明 select 的字段来排除大内容字段
- select * 和 select 全部字段的查询速度相差不大
select * 的缺点
- select * 不能有效的利用覆盖索引
- select * 读取不需要的列会增加CPU、IO、NET消耗
覆盖索引
覆盖索引就是从索引中直接获取查询结果,要使用覆盖索引需要注意select查询列包含在索引列中;where条件包含索引列或者复合索引的前导列
select * 和 select 字段的速度对比的更多相关文章
- 关于Select * 与Select 字段名 的问题!
[转]http://blog.csdn.net/tongyu2009/article/details/8252418 1.SELECT * 语句取出表中的所有字段,不论该字段的数据对调用的应用程序是否 ...
- select * 和 select 所有字段的区别
阅读本文大概需要 1 分钟. 之前发过的文章中,关于 select * 和 select 所有字段的知识,有描述不恰当,这次重新纠正下,加深下理解. MySQL 5.1.37 表记录数 41,547, ...
- 子查询 做where条件 做 from的临时表 ,做select的一个字段 等
子查询 做where条件 做 from的临时表 ,做select的一个字段 等
- sql判断以逗号分隔的字符串中是否包含某个字符串--------MYSQL中利用select查询某字段中包含以逗号分隔的字符串的记录方法
sql判断以逗号分隔的字符串中是否包含某个字符串---------------https://blog.csdn.net/wttykj/article/details/78520933 MYSQL中利 ...
- MySQL select 语句指定字段查询
指定字段查询 SELECT 语法 SELECT [ALL | DISTINCT] {* | table.* | [table.field1[as alias1][,table.field2[as al ...
- Insert Into select 与 Select Into 哪个更快?
在平常数据库操作的时候,我们有时候会遇到表之间数据复制的情况,可能会用到INSERT INTO SELECT 或者 SELECT INTO : 那么二者语法上有什么区别?性能上又如何呢? 围绕着这两个 ...
- select *和select 全部
select *和select 全部字段 在查询上效果是一样的,速度也是一样的. 不过理论上来说select *反而会快点. 因为 1.select 全部字段在数据传输上消耗会更多,如果几百个字段这个 ...
- select * 比select column快很多奇怪案例分析
遇到MYSQL傻傻的地方,下面给个案例,大家感受下: 注意以下两个sql只有select *和select g.id区别. SQL1:SELECT g.idFROM table1 gINNER JOI ...
- oracle 中 insert select 和 select insert 配合使用
Insert Into select 与 Select Into 哪个更快? 在平常数据库操作的时候,我们有时候会遇到表之间数据复制的情况,可能会用到INSERT INTO SELECT 或者 SEL ...
随机推荐
- spring 使用@Valid校验数据出错DEBUG org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod - Failed to resolve argument 0 of type
问题原因:在 @Valid 的那个参数后面紧跟着一个 BindingResult 的参数(一定要紧跟着) 参考来源:https://segmentfault.com/q/101000000838468 ...
- Android 中View的工作原理
Android中的View在Android的知识体系中扮演着重要的角色.简单来说,View就是Android在视觉的体现.我们所展现的页面就是Android提供的GUI库中控件的组合.但是当要求不能满 ...
- 提取站长之家IP批量查询
1.工具说明 写报告的时候为了细致性,要把IP地址对应的地区给整理出来.500多条IP地址找出对应地区复制粘贴到报告里整了一个上午. 为了下次更好的完成这项重复性很高的工作,所以写了这个小的脚本. 使 ...
- HelloCube:IJobForEach
此示例演示了基于作业的ECS系统,该系统可旋转一对立方体. 它显示了什么? 此示例基于ForEach示例构建,并说明如何在多线程作业中执行相同的工作,而不是在主线程上执行相同的工作. 与前面的示例一样 ...
- 我是如何提高工作效率的-工具篇(二)-listary
痛点: 还在为不能闪电速度搜索全盘文件.程序.无缝切换程序烦恼吗? 效果图: 功能1:搜索 各种文件.支持模糊搜索.全拼.文字首字母等模糊查询方式. (功能强大.尽情探索!) 痛点:文件好多啊,可 ...
- C语言的灵魂——指针基础
一.什么是指针 1.指针的定义:地址形象化为指针,通过指针能够找到内存单元. 指针变量就是地址变量,变量的值为指针. 指针其实是我们将变量名和地址的关系显化(独立)出来的一种形式,是为了我们更加方便的 ...
- Vmare虚拟机安装麻烦二三事
1).如何把虚拟机完整的迁移到另一个磁盘空间 2).VMware启动时提示我已移动或我已复制该虚拟机 3).虚拟机上显示主ip地址网络信息不可用怎么解决 4).vmware15虚拟机安装mac os ...
- HOG算法总结
1.HOG特征提取所针对的图像的尺寸是固定的.输入的图像应首先resize到这个尺寸. 2.尺寸的划分3个等级:window,block,cell window即输入的需要提取特征的图片大小.然后将w ...
- 【ARM-Linux开发】ti CMEM使用
1.CMEM Overview http://processors.wiki.ti.com/index.php/CMEM_Overview 2.Changing the DVEVM memory ma ...
- (生鲜项目)08. ModelSerializer 实现商品列表页, 使用Mixin来实现返回, 以及更加方便的ListAPIView, 以及分页的设置
第一步: 学会使用ModelSerializer, 并且会使用ModelSerializer相互嵌套功能 1. goods.serializers.py from rest_framework imp ...