MySQL数据库
文章平均质量分 58
哈维先生
这个作者很懒,什么都没留下…
展开
-
MySQL的聚合函数使用实例
MySQL的聚合函数的使用实例原创 2013-08-23 22:14:59 · 1056 阅读 · 0 评论 -
MySQL的TRUNCATE使用
TRUNCATE [TABLE] tbl_nameTRUNCATE TABLE用于完全清空一个表。从逻辑上说,该语句与用于删除所有行的DELETE语句等同,但是在有些情况下,两者在使用上有所不同。对于InnoDB表,如果有需要引用表的外键限制,则TRUNCATE TABLE被映射到DELETE上;否则使用快速删减(取消和重新创建表)。使用TRUNCATE TABLE重新设置AUTO_INCRE原创 2014-02-27 15:06:49 · 2402 阅读 · 0 评论 -
MySQL LOAD DATA INFILE语法
将temp.txt中的数据高速导入到table_name中,并且规定插入的列(col1,col2,...)load data infile '/tmp/temp.txt' into table table_name fields terminated by ',' lines terminated by '\n' (col1,col2,...)原创 2014-02-15 12:09:18 · 1107 阅读 · 0 评论 -
MySQL数据库优化
优化数据库对象优化表的数据类型在MySQL中,可以使用函数PROCEDURE ANALYSE()对当前应用的表进行分析,该函数可以对数据表中列的数据类型提出优化建议,用户可以根据应用的实际情况酌情考虑是否实施优化。以下是函数PROCEDURE ANALYSE的使用方法。SELECT * FROM tb1_name PROCEDURE ANALYSE()SELECT原创 2013-12-04 08:40:56 · 160 阅读 · 0 评论 -
MySQL优化之数据库结构:数据对象优化
优化表的数据类型原创 2014-02-28 22:06:55 · 932 阅读 · 0 评论 -
MySQL的时间函数
时间函数CURDATE()或者CURRENT_DATE()返回当前日期,只包含年月日CURTIME()或者CURRENT_TIME()返回当前时间,包括时分秒NOW()返回当前时间,包含日期和时间UTC_DATE函数返回UTC时间,北京时间=UTC时间+8小时UNIX_T原创 2014-02-19 21:33:42 · 816 阅读 · 0 评论 -
MySQL支持的数据类型
日期时间类型Mysql中有多种数据类型可以用于日期和时间的表示。这些数据类型的主要区别如下:(1)如果要用来表示年月日,通常用DATE来表示;(2)如果要用来表示年月日时分秒,通常用DATETIME表示;(3)如果只用来表示时分秒,通常用TIME来表示;(4)如果需要进场插入或者更新日期为当前系统时间,则通常使用TIMESTAMP来表示。(5)如果只是年份,可以原创 2013-11-29 09:08:59 · 1201 阅读 · 0 评论 -
MySQL 常见函数
字符串函数CONCAT(str1,str2,...)返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。[sql] view plaincopymysql> SELECT CONCAT('My', 'S', 'QL'); -> 'MySQL' mysql> SEL原创 2014-01-22 16:38:40 · 1011 阅读 · 0 评论 -
MySQL的replace into用法总结
简介Replace类似于insert语句。如果表中的一个旧记录与一个用于PRIMARY KEY或一个UNIQUE索引的新记录具有相同的值,则在新记录被插入之前,旧记录被删除。除非表有一个PRIMARY KEY或UNIQUE索引,否则,使用一个REPLACE语句没有意义。该语句会与INSERT相同,因为没有索引被用于确定是否新行复制了其它的行。所有列的值均取自在REPLACE语句中被原创 2014-02-26 11:18:29 · 1387 阅读 · 0 评论 -
MySQL中的alter方法
在表中添加新列add(after)alter table tbl_name add column col_name 字段类型 字段其他属性;例如:在id列后面添加name列。alter table student add column name varchar(20) not null after id.alter table tbl_name drop column co原创 2014-03-09 16:47:47 · 376 阅读 · 0 评论 -
MySQL优化之数据库结构:索引优化
多列索引原创 2014-02-26 20:23:06 · 156 阅读 · 0 评论 -
MySQL优化之应用端优化:MySQL查询高速缓冲
MySQL查询高速缓冲查询缓存会存储SELECT查询的文本以及发送给客户端的相应结果。如果随后收到一个相同的查询,服务器从查询缓存中重新得到查询结果,而不再需要解析和执行查询。如果有一个不经常改变的表并且服务器收到该表的大量相同查询,查询缓存在这样的应用环境中十分有用。对于许多Web服务器来说存在这种典型情况,它根据数据库内容生成大量的动态页面。查询缓存不返回旧的数据。当表原创 2014-02-26 20:09:18 · 692 阅读 · 0 评论 -
MySQL的备份与恢复
备份的作用备份主要的作用:(1)灾难恢复:硬件故障、一个不经意的bug导致数据损坏或者服务器机器数据由于某些原因不可获取或者无法使用(2)人们改变想法:例如删除数据后又想恢复这些数据(3)测试:基于实际数据来测试的方法是,定期用最新的生产环境数据更新测试服务器。备份策略(1)首先要确定是事务性还是非事务性,两种不同的存储引擎备份方式在处理数据一致性方原创 2013-10-18 14:56:43 · 915 阅读 · 0 评论 -
MySQL的存储引擎
MyISAMMyISAM是MySQL的默认存储引擎,不支持事务、也不支持外键,其优势是访问的速度快,对事务完整性没有要求或者以SELECT、INSERT为主的应用基本上都可以使用这个引擎来创建表。每个MyISAM在磁盘上存储成三种文件,其文件名都和表名相同,但扩展名为:(1).frm(2)MYD(MYData,存储数据)(3)MYI(MYIndex,存储索引)数据文原创 2013-12-02 08:35:52 · 83 阅读 · 0 评论 -
SQL语句
SQL分类SQL语句主要分为以下几类:DDL(Data Definition Language)语句:数据定义语言。这些语句包括不同的数据段,数据库,表,列和索引等数据库对象的定义。常见的关键字有create、alter和dropDML(Data Manipulation Language)语句:数据操纵语言。用于添加,删除,更新和查询数据库记录,并检查数据的完整性DCL(Data原创 2013-08-27 09:10:26 · 570 阅读 · 0 评论 -
MySQL的锁机制
MyISAM引擎MyISAM引擎使用的是表锁。InnoDB引擎InnoDB引擎使用的是行锁。原创 2013-12-04 09:58:27 · 1673 阅读 · 0 评论 -
MySQL触发器
触发器触发程序是与表有关的命名数据库对象,当表上出现特定事件时,将激活该对象。触发程序与命名为tbl_name的表相关。tbl_name必须引用永久性表。不能将触发程序与TEMPORARY表或视图关联起来。trigger_time是触发程序的动作时间。它可以是BEFORE或AFTER,以指明触发程序是在激活它的语句之前或之后触发。trigger_event指明了激活原创 2013-12-30 11:17:17 · 90 阅读 · 0 评论 -
MySQL JOIN USING()用法
1 using()用于两张表的join查询,要求using()指定的列在两个表中均存在,并使用之用于join的条件。 示例: select a.*, b.* from a left join b using(colA); 等同于: select a.*, b.* from a left join b on a.colA = b.colA;2 多表查询就使用多个这样的join。原创 2014-01-14 11:48:07 · 2785 阅读 · 0 评论 -
MySQL的索引结构
1.索引基础索引是存储引擎用于快速找到记录的一种数据结构。存储引擎先在索引中找到对应的值,然后根据匹配的索引记录找到对应的数据行。索引可以包含一个列或者多个列的值,如果索引包含多个列,那么列的顺序就会变得比较重要了。2.索引的优缺点2.1优点1. 提高了查询速度2. 减少了数据读取操作(IO) 3. 降低排序和分组的成本(CPU)2.2缺点1. 占用了大原创 2013-10-09 15:40:56 · 1099 阅读 · 0 评论 -
MySQL的一些小技巧(持续更新)
1.巧用RAND()提取随机行在MySQL中,产生随机数的方法是RAND()函数,可以利用这个函数与ORDER BY子句一起完成随机抽取某些行的功能。它的原理其实就是ORDER BY RAND()能够把数据随机排序。2.利用GROUP BY的WITH ROLLUP子句做统计在SQL语句中,使用GROUP BY的WITH ROLLUP子句可以检索出更多的分组聚合信原创 2014-01-07 13:37:22 · 1334 阅读 · 0 评论 -
Mysql进程查看 show processlist
show processlist,用来显示哪些线程在运行。1.如果是SUPER权限,可以看到所有的线程;2.如果是单独的用户,只能看到自己的线程;3.如果不适用FULL,则只显示每个查询的前100个字符4.如果有线程在update或者insert 某个表,此时进程的status为updating 或者 sending data。这个命令中最重要的原创 2014-02-23 17:28:26 · 911 阅读 · 0 评论 -
MySQL中MAX函数与Group By一起使用的注意事项
GROUP BY原创 2014-03-17 10:42:06 · 5870 阅读 · 4 评论