必威体育Betway必威体育官网
当前位置:首页 > IT技术

SQL 使用 select * 的弊端

时间:2019-08-19 21:11:05来源:IT技术作者:seo实验室小编阅读:75次「手机版」
 

sql select

select中要不要使用 * 

除了极少数情况下,绝大多数情况下,使用 * 是一种糟糕的编程习惯!

分析如下:

1、如果采用 select * 进行查找时,查询到的列是按照它们在表的原始位置展示的;如果客户端同样采用列的原始位置进行引用,如果更改表结构,会导致难以察觉的错误

2、使用 * 时,数据会先查数据字典,明确 * 代表什么,这会在分析阶段造成大量开销;

3、select * 最大的问题是可能会多出一些不用的列,导致无法使用索引覆盖,导致查询成本几何层级的增加

4、不需要的字段会增加数据传输的时间,如果是本地客户端,连接的事本地的mysql服务器,tcp协议传输数据会增加额外时间;如果是db和客户端不在同一台机器,比如连接到阿里云,则开销会更加明显

5、如果查询的时候获取了不必要的列,字段较多时,mysql并非一次性保存,而是主次分布内存,当时用完后,再次分配。如此会导致多次分配,频繁分配会增加额外消耗时间

6、如果sql语句复杂,select * 会解析更多的对象,字段,权限,属性等内容,增加数据库负担

相关阅读

Windows下的MySQL安装、MySQL-Front安装

全栈工程师开发手册 (作者:栾鹏) Mysql数据库系统软件的安装 访问“http://dev.mysql.com/downloads/windows/installer/”或ht

Mysql 多实例(3307 3308 3309)

1. 创建相关目录 mkdir -p /data/330{7..9}/data 2. 创建配置文件 cat>> /data/3307/my.cnf<<EOF [mysqld] basedir

Navicat 链接虚拟机Mysql 报错:2003-Can't connect to

前言 在首次在本机用Navicat链接VMware win10虚拟机中的Mysql数据库报错,如下: 解决方法 一、尝试ping虚拟机ip地址 如果出现

MySql主从复制 Master-slaver

通过阅读网上以及书本知识的总结:仅为学习记录,有误请大家指出。Mysql自身提供了主从复制功能,可以比较方便实现数据的多处自动备份

PostgreSQL数据库管理:定期vacuum

随笔 - 565 文章 - 1 评论 - 30 PostgreSQL数据库管理:定期vacuum 为什么PostgreSQL数据库管理工作中,定期vacuum是一个重要的

分享到:

栏目导航

推荐阅读

热门阅读