mysql优化之语句调优

SQL优化技巧 

  • 使用group by 分组查询是,默认分组后,还会排序,可能会降低速度,在group by 后面增加 order by null 就可以防止排序.
  • 有些情况下,可以使用连接来替代子查询。因为使用join,MySQL不需要在内存中创建临时表。
  • select * from dept, emp where dept.deptno=emp.deptno; [简单处理方式]
  • select * from dept left join emp on dept.deptno=emp.deptno;  [左外连接,更ok!]
  • 对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引
  • 应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,
  • 如:select id from t where num is null  最好不要给数据库留 NULL,尽可能的使用 NOT NULL 填充数据库.
  • 备注、描述、评论之类的可以设置为 NULL,其他的,最好不要使用 NULL。
  • 不要以为 NULL 不需要空间,比如:char(100) 型,在字段建立时,空间就固定了, 不管是否插入值(NULL 也包含在内),
  • 都是占用 100 个字符的空间的,如果是 varchar 这样的变长字段, null 不占用空间。
  • 可以在 num 上设置默认值 0,确保表中 num 列没有 null 值,然后这样查询:
  • select id from t where num = 0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/658108.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

安卓开发转鸿蒙开发到底有多简单?

前言 相信各位搞安卓的同学多多少少都了解过鸿蒙了,有些一知半解而有些已经开始学习起来。那这个鸿蒙到底好不好搞?要不要搞? 安卓反正目前工作感觉不好找,即便是上海这样的大城市也难搞,人员挺饱和的。最近临近年关…

23年12月-24年1月工作笔记整理(前端)

目录 一、css知识二、js知识三、需求技术 一、css知识 1.css实现文字描边(白底黑边) -webkit-text-stroke: 1px #000; color: #fff; font-weight: 900;2.css子元素平分父元素的宽度 父元素{ display:flex;} 子元素{flex:1}二、js知识 1.dayjs拿月份…

发布技术路线图!美国量子计算公司QuEra公开三年OKR

​编辑丨慕一 编译/排版丨琳梦 卉可 深度好文:1100字丨8分钟阅读 近期,美国量子计算公司QuEra Computing宣布了一系列关于容错量子计算机的战略路线图,该路线图从2024年开始,最终目标是打造具有100纠错逻辑量子比特的系统。 在…

银行数据仓库体系实践(10)--汇总指标层和集市模型设计

建立多层次的数据访问服务体系,有力提升数据仓库的价值。基于指标汇总层、集市层、可以提供面向业务人员的即席数据查询、以及面向应用开发者的数据接口、应用访问接口,满足不同类型应用的需要。 1、汇总指标层模型设计原则及步骤 1.1建设目标&#xff…

Blender教程(基础)-面的细分与删除、挤出选区-07

一、Blender之面的细分 新建一个立方体,在编辑模式下、选中一个面。 在选中的面上单击右键弹出细分选项,选择细分。 在选中细分后、会默认细分1次。修改细分次数在左下角 二、Blender之面的删除 选择中需要操作的面,在英文状态下按X键弹…

Flutter开发2:安装Flutter

在本篇博客中,我们将详细介绍如何安装Flutter开发环境。安装Flutter是开始使用Flutter进行跨平台移动应用开发的第一步。让我们开始吧! 官方安装文档 步骤1:下载Flutter SDK 打开浏览器,访问Flutter官方网站:https://…

SSRF靶场实践(作业)

Pikachu靶场 进入ssrf的页面,点击连接,发现url中记载了另一个url的内容 通过加载百度的网址发现可以返回内容 利用伪协议进行读取本地文件powershell.exe;不能执行,只能读取 查看源码,发现是通过curl_exec()读取网页/…

uniapp的安卓升级功能说明

目录 1.实现思路 2.app代码示例 3.说明 1.实现思路 ①将安装包存储在后台服务器。 创建版本信息表,存储安装包的相关信息。保存安装包的名称,版本号,网络地址,是否强制升级,发布时间信息及升级内容等。表结构如下&…

如何在Excel中清除单元格的格式?这里有详细步骤

Microsoft Excel提供了大量样式选项来自定义电子表格的外观。但是,如果你需要删除格式,则可以很容易地删除选定单元格和整个工作表的格式。我们将向你展示如何操作。 ​注意:清除格式只会删除文本的样式;将保留你的实际文本。 如…

java.util.LinkedHashSet cannot be cast to java.util.List 的解决方案

出现 “java.util.LinkedHashSet cannot be cast to java.util.List” 的错误,通常是因为你试图将一个 LinkedHashSet 对象直接强制转换为 List 类型。在 Java 中,LinkedHashSet 和 List 是两种不同的集合类型,不能直接进行转换。LinkedHashS…

USB清理软件USBclean轻松清理.DS_Store,Thumbs.db,.Spotlight文件

USBclean for Mac是一款Mac上的USB清理工具,USBclean mac版能够帮助我们快捷方便地为你清理外部磁盘垃圾文件,它支持将.DS_Store, Thumbs.db, .Spotlight 以及回收站中的垃圾文件进行清理。操作也十分简单,只需要将要清理的外部磁盘拖拽到USB…

Linux编辑器之vim的使用

文章目录 一、vim简介二、vim的基本概念三、vim的基本操作四、vim正常模式命令集移动光标删除文字复制替换撤销上一次操作更改跳至指定的行vim末行模式命令集列出行号跳到文件中的某一行查找字符保存文件离开vim 五、进阶vim玩法打开文件批量注释代码执行shell命令指定注释窗口…

harmony开发ohpm mac环境配置

Mac电脑 安装 Ohpm |HarmonyOS 安装 Ohpm ohpm环境配置好后,执行ohpm会报如下的错 ohpm has not been initialized yet. Execute the init script to initialize it first. 解决办法 鸿蒙OS开发,解决报错“ohpm has not been initialized yet…

关于Gitlab用户登录提示无限重定向循环ERR_TOO_MANY_REDIRECTS

#工作笔记# 查阅了网上所有相关的记录,都没有解决gitlab登录/users/sign_up/welcome提示ERR_TOO_MANY_REDIRECTS,好在最终解决了,记录在此。 先说下起因: github哼哼不想用了,原因太多,所以内部讨论用git…

3D人体运动重建

目录 MotioNet FLEX 人格网格重建: VirtualMarker 虚拟人体网格重建 GraMMaR 数据集: MotioNet https://github.com/Shimingyi/MotioNet FLEX https://github.com/BrianG13/FLEX 人格网格重建: CVPR2023:IDEA与清华提出首…

远程访问@HttpExchange

提示:这是SpringBoot3以上的新特性。 远程访问HttpExchange 一、webClient二、Http 服务接口的方法定义三、声明式 HTTP 远程服务1.组合使用注解2.使用单个注解3.定制 HTTP 请求服务 四、总结1.部分方法过时2.过时的方法详解 远程访问是开发的常用技术,一…

java中实现事务的两种方式:编程式事务和声明式事务

涉及到与数据库交互就必须会用到事务,如果一个方法中需要用到事务的地方没有使用事务就会造成数据不一致的风险,进而导致比较严重的bug,比如扣款时,账户的余额已经进行了扣减但是相应的订单没有生成,这种涉及账目的问题…

方法阻塞的解决方案之一

1、简单使用 一个h一个cpp文件 #pragma once #include <iostream> #include <thread> #include <atomic> #include <chrono> #include <string>class Person {public:struct dog {std::string name;int age;};public:void a(std::atomic<bo…

设计模式篇---备忘录模式

文章目录 概念结构实例总结 概念 备忘录模式&#xff1a;在不破坏封装的前提下捕获一个对象的内部状态&#xff0c;并在该对象之外保存这个状态&#xff0c;像这样可以在以后将对象恢复到原先保存的状态。 就好比我们下象棋&#xff0c;下完之后发现走错了&#xff0c;想要回退…

【C++】美感(beautiful)

题目描述 寿寿喜欢有美感的序列。 对于寿寿来说一个序列是有美感的&#xff0c;当且仅当这个序列每两个相邻的数的和是m的倍数。特别的&#xff0c;寿寿认为长度为1的序列也是具有美感的。 寿寿现在随便在纸上写了一个长度为n的序列a&#xff0c;这个序列目前还不具有美感。因此…