MySQL数据库sql语句的一些简单优化

1、查询条件的先后顺序

有多个查询条件时,要把效率高能更精确筛选记录的条件放在后边。因为MySQL解析sql语句是从后往前的(不知是否准确)。

例:

select a.*,b.* from UsrInf a,OrgInf b where LogNam=‘njnydx9‘ and b.OrgId=a.blnorg

SQL语句从后往前解析,把LogNam=‘njnydx9‘换到后边,避免了更多结果集的连接,提高了执行效率

2、in的效率问题

看网上都说in相当于多个条件的or。实际测试后发现in的执行速度更快。

例:

以下查询结果集数量为 91606
select * from usrbks where boksts=‘E‘ or boksts=‘D‘ or boksts=‘O‘  用时0.004s
select * from usrbks where boksts in(‘E‘,‘D‘,‘O‘)  用时0.001s

时间: 2024-10-14 04:06:55

MySQL数据库sql语句的一些简单优化的相关文章

mysql数据库sql语句调优 、

mysql数据库sql语句调优 . 索引设计原则: 索引列一般为where子句中的列或连接字句中的列 尽量不对基数小的列做索引,如性别列 尽可能使用短索引:如果对字符列索引尽量指定最小长度. (short Keys are better,Integer best) create index cityname on city(city(10)); 复合索引前缀特性,索引的顺序很重要. key(a,b,c)联合索引: 可以走索引的组合:key(a),key(a,b ),key(a,b,c) 下列索引

使用MySQL数据库 SQL语句

1.查看当前服务器数据库中有哪些库? SHOW   DATABASES;   ###查看有哪些库 2.查看当前使用的库有哪些表? USE +要查询的库名 SHOW   TABLES; ###查询库中有哪些表 3.查看标的结构? USE  +要使用的库名 DESCRIBE  +表名 ###查看表结构 4.创建新的库? CREATE   DATABASE +表名  ###创建库 5.创建新的表 CREATE   TABLE +表名 (字段1名称   类型 ,字段2名称   类型,...)  ###创

mysql数据库sql语句

数据库(mysql) sql是一种编程语言,用于存储,查询,更新,管理关系型数据库 分为四类: DDL:数据定义语言 //针对于数据库和表,creat drop alter select DCL:数据控制语言 //grant...if DML:数据操纵语言 //操作表中数据,insert delete update DQL:数据查询语言 //查询:select 1.数据库的创建/删除/查/切换 a)Create database 数据库名称 //创建数据库 b)Drop database 数据库

千万级大数据的Mysql数据库SQL语句优化

1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select id from t where num=0 3.应尽量避免在 where 子句中使用!=或<>操作符,否则引擎将放弃使用

Mysql常用sql语句(一)- 操作数据库

21篇测试必备的Mysql常用sql语句,每天敲一篇,每次敲三遍,每月一循环,全都可记住!! https://www.cnblogs.com/poloyy/category/1683347.html 需要注意,创建数据库和创建表的语句博文都在前面哦,整个系列都是相互关联的哈,需要用到前面创建的数据库和表哦 前言 针对数据库的操作语句叫做数据定义语言(DDL)   数据库有哪些操作呢? 创建数据库 查询数据库 修改数据库 删除数据库 选择数据库 简称“增删改查“,点击右边目录即可跳转哦! ----

Effective MySQL之SQL语句最优化

推荐本SQL优化的书<Effective MySQL之SQL语句最优化>. 主要讲解:如何去分析SQL的性能.索引的原理.如何创建合适的索引.如何去分析线上系统的性能瓶颈. 另外还介绍了几个辅助工具: mysqldumpslow 来分析慢查询日志: Google开源的mysql-slow-query-log-parser 分析慢查询日志: 应用程序中使用MySQL Proxy来收集SQL语句.QEP.查询执行时间: 开源Maatkit检查数据库中的重复索引: Google的MySQL补丁,引入

Mysql 数据库 操作语句

Mysql 数据库 操作语句 mysql 格式语句规范如何登陆你的数据库?举例! 如果你的是 编译安装的花 那就得去编译安装后的那个目录中去,我的是安装到/usr/local/mysql 下 登陆数据库: cd /usr/local/mysql bin/mysql -u root -p 然后输入密码mysql-> show databases: 察看数据库记住每执行一句要带: 一.mysql常用语句创建,删除和最基本查询: 显示数据库    mysql->showdatabases; 创建数据

Orecle Mysql 基本sql语句DDL & DML 介绍与总结 by 冰琉璃

先给大家普及一下安装mysql的简易方法:yum yum search mysql (查找关于mysql的内容) 找到后需要安装3个内容 mysql.i386 mysql-server.i386 mysql-devel.i386 安装过后 service mysqld start (启动mysql服务) 进入mysql mysql -h -u root -p 密码直接回车 开始密码为默然:以后可以在mysql里面改密码或者创建账号等操作 Mysql的sql语句大致分为4种  DDL (定义语句)

MySQL批处理SQL语句

MySQL 支持批处理的模式执行一批SQL语句,下面的例子就是实验MySQL如何在windows下批处理执行SQL语句. create table test(id int,name varchar(20)); insert into test values(1,'watson'); batchfile.txt里包含下面的一些SQL 语句,此文件放在windows系统的c:/batchmysql/batchfile.txt insert into test select * from test;