MySQL查询提示

时间:2021-07-13 22:07:01

MySQL查询提示:

1.LOW_PROPRITY,HIGHT_PRIORITY
  作用:指定sql语句的运行优先级,会将加了HIGHT_PROPRITY提示的sql调度到表访问队列的最前面
  限制:仅对表级别的锁的引擎有效(MyISAM引擎),对非表级别的引擎的锁无效,比如innodb引擎
  用法:update test LOW_PROPRITY set name = 'abc' where id = 1

2.DELAYED
  作用:对于Insert或者replace操作,将待写入的数据放入缓冲区,待表空闲的时候再做真正的插入
  限制:存在丢失数据的风险,并非所有引擎都支持DELAYED 操作,mysql5.7似乎并不支持改操作符
  用法:insert DELAYED into test values (1,'aaa')

3.straight_join 强制连接顺序
  作用:强制连接顺序,指定表按照书写的顺序或者前后顺序来关联
  限制:
  用法:1.select * from t1 a straight_join t2 b on a.id= b.id1  固定t1表和t2 表的关联顺序,
     2.select straight_join * from t1 a inner join t2 b on a.id= b.id1 inner join test c on b.id1 = c.id 让查询中所有的表按照书写顺序做关联
4.SQL_SMALL_RESULT 和 SQL_BIG_RESULT
  作用:在处理DISTINCT或者GROUP BY的时候,提示优化器按照较小(内存空间)或者较大(磁盘临时控件)的方式来处理结果集
  限制:仅对select 语句有效
  用法:select SQL_SMALL_RESULT a.id, count(1) from t1 a straight_join t2 b on a.id= b.id1 group by a.id

5.SQL_BUFFER_RESULT
  作用:将查询结果集放入临时表,尽快释放表锁
  限制:
  用法:select SQL_BUFFER_RESULT * from testbak

6. SQL_CACHE和SQL_NO_CACHE
  作用:告诉查询引起是否将结果缓存在查询缓存中
  限制:
  用法:select SQL_NO_CACHE/*SQL_CACHE*/ * from testbak

7.SQL_CALC_FOUND_ROWS
  作用:存在分页的情况下,提示在计算总行的时候忽略分页限制
  限制:
  用法:select SQL_CALC_FOUND_ROWS * from testbak LIMIT 100; --限制为100 页面
     select FOUND_ROWS();--计算上述语句中不加LIMIT 100情况下的总行数

8.FOR UPDATE 和 LOCK IN SHARE MODE
  作用:锁提示
  限制:仅INNODB引起支持这两个提示
  用法:select * from testbak where id = 8888 for update

表锁定:
  lock table t1 read/write;
  SELECT * FROM t1;
  delete from t1;
  unlock tables ;

9.USE INDEX,IGNORE INDEX,FORCE INDEX
  作用:强制索引提示
  用法:select count(1) from testbak USE index(idx_id) ;
     select count(1) from testbak IGNORE index(idx_id) ;
     select count(1) from testbak FORCE index(idx_id) ;

10. optimizer_search_depth
  控制优化器在穷举执行计划时的限度,如果查询长时间处于Statistics状态,那么可以考虑调地次参数
  optimizer_prune_level
  默认打开,让优化器根据需要扫描的行数来决定是否跳过某些执行计划
  optimizer_switch
  包含开启/关闭优化器特性的标志位
  前两个参数可以让优化器在生成执行计划的时候更加灵活,但是有可能错过一些最优化的执行计划,
  比如优化器要花10秒钟找一个“最”优化的执行计划,
  但是可以话3秒钟找一个“次”优化的执行计划,“次”优化的执行计划可以在2秒钟之内完成查询
  这个查询一共花费了3+2=5秒
  但是如果是花10秒钟找一个“最”优化的执行计划,最优化的执行计划需要0.5秒完成查询
  这个查询一共花费了10+0.5+2=10.5秒,有点得不偿失
  意思是不要为了找方法而花费的时间超过做事情本身的时间

MySQL查询提示的更多相关文章

  1. MySQL自成一派的查询提示

    [查询提示] MySQL中可以给select语句各种提示,比如告诉它“查询的结果集特别大,请直接用磁盘临时表”,“请让这条select优先执行” .... [查询提示:与结果集相关] 与结果集相关的查 ...

  2. mysql查询缓存打开、设置、参数查询、性能变量意思

    http://blog.sina.com.cn/s/blog_75ad10100101by7j.html http://www.cnblogs.com/zemliu/archive/2013/08/0 ...

  3. MySQL查询数据表中数据记录(包括多表查询)

    MySQL查询数据表中数据记录(包括多表查询) 在MySQL中创建数据库的目的是为了使用其中的数据. 使用select查询语句可以从数据库中把数据查询出来. select语句的语法格式如下: sele ...

  4. mysql 查询导出(txt,csv,xls)

    1 简介 工作中产品经常会临时找我导出一些数据,导出mysql查询结果数据有几种方法,下面介绍3种. ①  mysql -u  -p  -e "sql" db > filep ...

  5. MySQL查询高速缓冲

    对mysql的优化不在行,搞过几次优化,但是都不是很理想,还是浪费资源太多.一直发现我的mysql的缓存命中率极差,情况良好的时候到达过60-70%,但是运行时间一长,只有10-20%.查了一些资料, ...

  6. 连接mysql时提示java.sql.SQLException: Access denied for user 'root'@'DESKTOP-N2B2D9A' (using password: YES)

    用root连接mysql时提示:访问被拒绝 检查一下mysql server是否开启,发现后台在运行着..  然后查了一下mysql的用户表,发现root只能运行使用本地ip(localhost或者1 ...

  7. RDS for MySQL查询缓存 (Query Cache) 的设置和使用

    https://help.aliyun.com/knowledge_detail/41717.html?spm=5176.7841698.2.11.aCvOXJ RDS for MySQL查询缓存 ( ...

  8. 操作MySQL出错提示“BLOB/TEXT column request_data in key specification without a key length”解决办法

    错误原因: 查阅资料后才知道,原来Mysql数据库对于BLOB/TEXT这样类型的数据结构只能索引前N个字符.所以这样的数据类型不能作为主键,也不能是UNIQUE的.所以要换成VARCHAR,但是VA ...

  9. 【转】MySQL查询缓存详解

    [转]MySQL查询缓存详解 转自:https://www.cnblogs.com/Alight/p/3981999.html 相关文章:http://www.zsythink.net/archive ...

随机推荐

  1. ABP(现代ASP.NET样板开发框架)系列之22、ABP展现层——导航栏设置

    点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之22.ABP展现层——导航栏设置 ABP是“ASP.NET Boilerplate Project (ASP.NE ...

  2. ubuntu安装ssh

    为了解决远程连接ubuntu服务器控制端,方便操作.ubuntu不同的版本安装方式一致!首先在ubuntu服务器下安装SSH服务linux安装命令:sudo apt-get install opens ...

  3. int21 h

    表:DOS系统功能调INT 21H AH 功能 调用参数 返回参数 00 程序终止(同INT 20H) CS=程序段前缀 01 键盘输入并回显 AL=输入字符 02 显示输出 DL=输出字符 03 异 ...

  4. 嵌入式linux多进程编程

    嵌入式linux多进程编程 在主程序显示文本菜单.提供例如以下服务.要求每一个服务都通过生成子进程来提供. 服务包含:日历信息显示,日期信息显示,推断闰年服务,文件复制功能,数字排序功能.退出功能. ...

  5. iOS 10 语音识别Speech Framework详解

    最近做了一个项目,涉及到语音识别,使用的是iOS的speech Framework框架,在网上搜了很多资料,也看了很多博客,但介绍的不是很详细,正好项目做完,在这里给大家详解一下speech Fram ...

  6. 获取JSON对象的属性名称

    1.问题背景 一个json对象,是以键值对组成,通过循环json对象,获取json对象中的属性名称 2.实现源码 <!DOCTYPE html PUBLIC "-//W3C//DTD ...

  7. BZOJ&lowbar;1097&lowbar;&lbrack;POI2007&rsqb;旅游景点atr&lowbar;状压DP

    BZOJ_1097_[POI2007]旅游景点atr_状压DP 题面描述: FGD想从成都去上海旅游.在旅途中他希望经过一些城市并在那里欣赏风景,品尝风味小吃或者做其他的有趣 的事情.经过这些城市的顺 ...

  8. CentOS7没有eth0网卡

    本人刚刚进去运维圈,写写博客,记录一下自己日常工作学习中的各种问题,方便自己,方便他人. CentOS7系统安装完毕之后,输入ifconfig命令发现没有eth0,不符合我们的习惯.而且也无法远程ss ...

  9. P1462 通往奥格瑞玛的道路 最短路

    题目背景 在艾泽拉斯大陆上有一位名叫歪嘴哦的神奇术士,他是部落的中坚力量 有一天他醒来后发现自己居然到了联盟的主城暴风城 在被众多联盟的士兵攻击后,他决定逃回自己的家乡奥格瑞玛 题目描述 在艾泽拉斯, ...

  10. Hello 2019

    2019也要创造价值! 热爱生活!