Select * 与 Select 某几个字段,性能上有差异吗?
来源:互联网 发布:java poi svg 编辑:程序博客网 时间:2024/05/23 16:56
select语句的耗时主要在where条件,数据库表规模、是否建立索引、查询条件的复杂性上,这些点也是优化的重点。
普通情况下SELECT * 与 限制字段速度上没有差别,特殊情况下也许有差别,比如有一个超大长度的字段可能造成socket传输的压力。
MYSQL数据库的情况(简单情况测试):
表记录数41,547,002,即4000w行
使用远程客户端取1000条数据,统计时间:
- SELECT * FROM `dmsp`.`dmsp_dimension_content` LIMIT 0, 1000;
- SELECT `id`, `appid`, `aop`, `t`, `uid`, `sid`, `pid`, `pname`, `bid`, `bname`, `ptype`, `sm`, `sv`, `bt`, `national`, `area`, `ov` FROM `dmsp`.`dmsp_dimension_content` LIMIT 0, 1000;
多次查询(改变limit条件避免缓存),时间变化不大。
结论:两者差别几乎可忽略。所以查询所有字段(或者大多数字段)的时候,大可select *来操作。如果某些不需要的字段数据量特别大,还是写清楚字段比较好,因为这样可以减少网络传输
0 0
- Select * 与 Select 某几个字段,性能上有差异吗?
- 单表select *与select标明大多数字段性能基本一致
- epoll与select处理I/O事件的性能和使用差异
- sql中select字段影响性能分析
- select count的差异
- select,poll,epoll差异
- [MSSQL]Select count(*)与Select count(字段)的效率分析
- select *与select 所有字段的查询效率比较
- select字段与记录的一些规则
- 点击 Html Select 中的option标签时获得的鼠标坐标与点击页面上的其他地方存在差异
- oracle与mssql语法差异 1.select into
- Sql Server 中的select(*)和select【字段名】性能的比较
- select *与select 无索引列以及select 有索引列的比较
- SELECT WHERE 某字段 Like 条件
- ibatis缓存select字段
- sql select 0 字段
- mysql中的join on和where在性能上有差异吗?
- PostgreSQL如何在一大堆字段里面排除几个字段select出来
- 分布式与集群的区别
- ubuntu解压命令全览(rar)
- HashMap的工作原理
- iOS集成环信SDK点击聊天图片无效问题
- Spring3 整合MyBatis3 配置多数据源 动态选择SqlSessionFactory
- Select * 与 Select 某几个字段,性能上有差异吗?
- java反射机制
- 'nodeName' 为空或不是对象的原因
- 用ognl还是jstl+el?
- 从此不求人:自主研发一套PHP前端开发框架(16)
- android AIDL进程间通信
- Java执行顺序
- Linux ifconfig --网络配置命令
- java之动态代理