mysql 使用索引_mysql使用索引的注意事项

使用索引的注意事项

使用索引时,有以下一些技巧和注意事项:

1.索引不会包含有NULL值的列

只要列中包含有NULL值都将不会被包含在索引中,复合索引中只要有一列含有NULL值,那么这一列对于此复合索引就是无效的。所以我们在数据库设计时不要让字段的默认值为NULL。

2.使用短索引

对串列进行索引,如果可能应该指定一个前缀长度。例如,如果有一个CHAR(255)的列,如果在前10个或20个字符内,多数值是惟一的,那么就不要对整个列进行索引。短索引不仅可以提高查询速度而且可以节省磁盘空间和I/O操作。

3.索引列排序

MySQL查询只使用一个索引,因此如果where子句中已经使用了索引的话,那么order by中的列是不会使用索引的。因此数据库默认排序可以符合要求的情况下不要使用排序操作;尽量不要包含多个列的排序,如果需要最好给这些列创建复合索引。

4.like语句操作

一般情况下不鼓励使用like操作,如果非使用不可,如何使用也是一个问题。like “%aaa%” 不会使用索引而like “aaa%”可以使用索引。

5.不要在列上进行运算

复制代码代码如下:

select * from users where YEAR(adddate)<2007;

将在每个行上进行运算,这将导致索引失效而进行全表扫描,因此我们可以改成:

复制代码代码如下:

select * from users where adddate

6.不使用NOT IN和<>操作

下句会使用索引:

SELECT * FROM mytable WHERE username like'admin%'

下句就不会使用:

SELECT * FROM mytable WHEREt Name like'%admin'

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

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

相关文章

IIS问题

问题1&#xff1a;未启用父路径 症状举例&#xff1a; Server.MapPath() 错误 ASP 0175 : 80004005 不允许的 Path 字符 /0709/dqyllhsub/news/OpenDatabase.asp&#xff0c;行 4 在 MapPath 的 Path 参数中不允许字符 ..。 原因分析&#xff1a; 许多Web页面里要用到诸…

shape的简单用法

shap节点-----------------------------------定义shape的值&#xff0c;必须是下面的之一&#xff1a;"rectangle" 矩阵&#xff0c;这也是默认的shape"oval"    椭圆"line"     一条水平的直线。这种shape必须使用 <stroke> 元素…

mysql 存储过程 set into_mysql存储过程之创建(CREATE PROCEDURE)和调用(CALL)及变量创建(DECLARE)和赋值(SET)操作方法...

本文实例讲述了mysql存储过程之创建(CREATE PROCEDURE)和调用(CALL)及变量创建(DECLARE)和赋值(SET)操作方法。分享给大家供大家参考&#xff0c;具体如下&#xff1a;存储过程创建(CREATE PROCEDURE)和调用(CALL)这个咱就不说什么定义啦术语啦啥的&#xff0c;直接看着实例来慢…

bzoj2060[USACO2010,Nov]Visiting Cows拜访奶牛

题目链接&#xff1a;bzoj上是权限题~ 题目大意&#xff1a; 题解&#xff1a; 树型DP f[i][0]表示不选i&#xff0c;f[i][1]表示选i。(因为很水..就不详写了) 可列出方程&#xff1a; f[i][0]sigama(max(f[y][1],f[y][0])); f[i][1]sigama(f[y][0]); y为i的孩子 #include<c…

SQL中及Access的空值

在SQL中及Access有空值这个类型,不能直接用""去比较,即使是打开数据库要用以下字符串 select from * where filed is null 打开之后也必须有isnull(rs(" "))来判断.它的值是否为空. 所以只要涉及到数据为空的情况都应用isnull(rs(" "))来返回tru…

mysql修改engine_mysql下修改engine引擎的方法

修改my.ini&#xff0c;在[mysqld]下加上default-storage-engineINNODB其中红色字体部分是要指定的引擎名称。用sql语句修改已经建成表的引擎&#xff1a;alter table tableName typeInnoDB下面贴出我的my.ini文件供参考(http://www.my400800.cn)&#xff1a;[mysqld]basedirC:…

Controller的返回值

public String editItems(Model model) throws Exception {//itemsQueryVo参数如果没有的话 可以传一个null ItemsCustom items itemsService.findItemsById(1);model.addAttribute("items", items);return "items/editItems";} 1、返回String类型 表示返…

mysql保存plc数据_MySQL空间数据的保存

MySQL支持空间数据的存储&#xff0c;再做数据存储时&#xff0c;可以直接将数据转为WKT格式。WKT几何对象表示的示例(请注意,点坐标对以逗号分隔)&#xff1a;POINT(6 10)LINESTRING(3 4,10 50,20 25)POLYGON((1 1,5 1,5 5,1 5,1 1),(2 2,2 3,3 3,3 2,2 2))MULTIPOINT(3.5 5.6…

javascript event

event代表事件的状态&#xff0c;例如触发event对象的元素、鼠标的位置及状态、按下的键等等。 event对象只在事件发生的过程中才有效。 event的某些属性只对特定的事件有意义。比如&#xff0c;fromElement 和 toElement 属性只对 onmouseover 和 onmouseout 事件有意义。 例子…

如何让 C++ 和 C# 一样易用,而且效率更高?

&#xff08;未完成&#xff0c;待续。。&#xff09; 第一章&#xff1a;C基本功 1. 养成良好的编码习惯。 2. 堆上的资源随用随还&#xff0c;严格控制生命周期。 第二章&#xff1a;一些调试心得 1. 在VisualStudio环境下&#xff0c;曾出现 Detected memory leaks!&#xf…

mysql 51cto 数据类型_Mysql支持的数据类型

一.数值类型Mysql支持所有标准SQL中的数值类型&#xff0c;其中包括严格数据类型(INTEGER,SMALLINT,DECIMAL,NUMBERIC)&#xff0c;以及近似数值数据类型(FLOAT,REAL,DOUBLE PRESISION),并在此基础上进行扩展。扩展后增加了TINYINT,MEDIUMINT,BIGINT这3种长度不同的&#xff0c…

XP操作系统最优视觉效果

想让系统运行得快&#xff0c;又不想桌面弄得像2000似的&#xff0c;哪应该怎么做能&#xff1f; 右击我的电脑——属性 点击高级选项夹——点性能中的设置按钮 在视觉效果选项夹里点调整为最佳性能&#xff08;此时如果确定的话就跟2000的界面一样了&#xff09; 再在“在窗口…

【JZOJ4819】【NOIP2016提高A组模拟10.15】算循环

题目描述 输入 输出 样例输入 167 198 样例输出 906462341 数据范围 解法 令f(n)∑ni1i&#xff0c;g(n)∑ni1i2 易得ans∑ni1∑mj1f(n−i1)∗f(m−j1) 等价于ans∑ni1∑mj1f(i)∗f(j) 显然f(n)n∗(n−1)/2&#xff1b; 拆开得ans14∑ni1∑mj1i∗(i1)∗j∗(j1) 再得ans14∑…

vb装入系统启动项

装入系统启动项 Dim WshShell Set WshShell CreateObject("WScript.Shell") WshShell.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\shi", "d:\shi.exe /start", "REG_SZ"

mysql key value 引擎_mysql集成的key-value引擎-个人翻译

正如上文提到的&#xff0c;我们只是释放出了一个技术预览版。此功能目前只是mysql的一个插件&#xff0c;使用memcached协议。If you would just like to get a brief introduction on thesetup steps, there is a “README-innodb_memcached” in themysql-5.6.2-labs-innodb…

运行命令全集

winver 检查Windows版本wmimgmt.msc 打开windows管理体系结构wupdmgr windows更新程序winver 检查Windows版本wmimgmt.msc 打开windows管理体系结构wupdmgr windows更新程序wwww windows脚本宿主设置write 写字板winmsd 系统信息wiaacmgr 扫描仪和照相机向导wi…