mysql数据库优化课程---14、常用的sql技巧

一、总结

一句话总结:其实就是sql中那些函数的使用

1、mysql中函数如何使用?

选择字段

其实就是作用域select的选择字段

3.转大写:
ucase();
例子: select id,ucase(username),age from user;

2、sql中的时间戳函数有必要学么?

没必要

其实没必要,因为我们时间都是存的时间戳

所以要是要时间戳对应的日期的话,可以去php中操作

3、重排auto_increment方法?

delete alter
truncate

1.delete
1)delete from user;
2)alter table user auto_increment=1;

2.truncate
truncate user;

4、mysql中命令的帮助?

命令前 ?

1.简单
? create

2.更多
? fun%

5、巧用RAND()提取随机行?

order by rand limit

select * from user order by rand limit 3;

6、mysql中如何使用正则表达式?

regexp 正则表达式

1.以php结尾的数据
select * from user where username regexp 'php$';

2.以php结尾或以linux结尾的数据
select * from user where username regexp 'php$' or username regexp 'linux$';

3.查找包含php或linux或user的数据
select * from user where username regexp 'php|linux|user';

7、mysql中的正则表达式为什么用的少?

like

因为我们一般是从mysql中拿数据,然后扔给php,在php中用正则表达式取数据

正则表达式其实比like慢,一般的操作我们都可以用like实现

二、内容在总结中

1、相关知识

mysql字符串函数:
1.字符串连接
concat();
例子: select concat('php','linux');

2.转小写
lcase();
例子: select lcase('PHP IS VERY MUCH!');

3.转大写:
ucase();
例子: select id,ucase(username),age from user;

4.长度
length();
例子: select length('linux');

5.取除左边的空格
ltrim();
例子: select length(ltrim('   linux'));

6.取除右边的空格
rtrim();
例子: select length(rtrim('linux   '));

7.重复
repeat();
例子: select concat(repeat('-',20),'linux');

8.替换
replace();
例子: select replace('linux and java','linux','php');

9.截取
substring();
例子: select substring('/usr/local/src',6,5);

10.空格
space();
例子: select concat('linux',space(20),'php');

mysql数学函数:
1.bin();
十进制转2进制
例子: select bin(10);

2.ceiling();
取上一个整数
例子: select ceiling(10.5);

3.floor();
取下一个整数
例子: select floor(10.5);

4.max();
取最大数
例子: select max(id) from user;

5.min();
取最小数
例子: select min(id) from user;

6.sqrt();
开平方
例子: select sqrt(100);

7.rand();
求随机数
例子: select * from user order by rand();

mysql日期函数:
1.curdate();
当前日期
例子: select curdate();

2.curtime();
当前时间
例子: select curtime();

3.now();
当前日期和时间
例子: select now();

4.unix_timestamp();
当前时间戳
例子: select unix_timestamp();

5.from_unixtime();
时间戳转日期
例子: select from_unixtime(1492176896);

6.week(date);
一年中的第几周
例子: select week('2017-1-8');

7.year(date);
日期中的年部分
例子: select year('2017-4-14');

8.datediff();
日期差值
例子: select datediff('2017-4-14','2017-4-10');

重排auto_increment方法:
1.delete
1)delete from user;
2)alter table user auto_increment=1;

2.truncate
truncate user;

mysql中命令的帮助:
1.简单
? create

2.更多
? fun%

巧用RAND()提取随机行:
select * from user order by rand limit 3;

正则表达式的使用:
1.以php结尾的数据
select * from user where username regexp 'php$';

2.以php结尾或以linux结尾的数据
select * from user where username regexp 'php$' or username regexp 'linux$';

3.查找包含php或linux或user的数据
select * from user where username regexp 'php|linux|user';

 

mysql数据库优化课程---14、常用的sql技巧的更多相关文章

  1. mysql数据库优化课程---18、mysql服务器优化

    mysql数据库优化课程---18.mysql服务器优化 一.总结 一句话总结: 1.四种字符集问题:字符集都设置为utf-82.slow log慢查询日志问题3.root密码丢失 1.mysql存在 ...

  2. mysql数据库优化课程---15、mysql优化步骤

    mysql数据库优化课程---15.mysql优化步骤 一.总结 一句话总结:索引优化最立竿见影 1.mysql中最常用最立竿见影的优化是什么? 索引优化 索引优化,不然有多少行要扫描多少次,1亿行大 ...

  3. mysql数据库优化课程---13、mysql基础操作

    mysql数据库优化课程---13.mysql基础操作 一.总结 一句话总结:mysql复制表,索引,视图 1.mysql如何复制表? like select * 1.复制表结构 create tab ...

  4. mysql数据库优化课程---16、mysql慢查询和优化表空间

    mysql数据库优化课程---16.mysql慢查询和优化表空间 一.总结 一句话总结: a.慢查询的话找到存储慢查询的那个日志文件 b.优化表空间的话可以用optimize table sales; ...

  5. mysql数据库优化课程---11、mysql普通多表查询

    mysql数据库优化课程---11.mysql普通多表查询 一.总结 一句话总结:select user.username,user.age,class.name,class.ctime from u ...

  6. mysql数据库优化课程---6、mysql结构化查询语言有哪些

    mysql数据库优化课程---6.mysql结构化查询语言有哪些 一.总结 一句话总结:主要分为四类 1.DCL 数据控制语言1)grant2)commit3)rollback 2.DDL 数据定义语 ...

  7. mysql数据库优化课程---1、数据库的本质是什么

    mysql数据库优化课程---1.数据库的本质是什么 一.总结 一句话总结: 文件夹-文件:一个数据库其实就是一个的文件夹,数据库里面的表就是文件夹里的一个或者多个文件(根据数据库引擎不同而不同,My ...

  8. mysql数据库优化课程---17、mysql索引优化

    mysql数据库优化课程---17.mysql索引优化 一.总结 一句话总结:一些字段可能会使索引失效,比如like,or等 1.check表监测的使用场景是什么? 视图 视图建立在两个表上, 删除了 ...

  9. mysql数据库优化课程---12、mysql嵌套和链接查询

    mysql数据库优化课程---12.mysql嵌套和链接查询 一.总结 一句话总结:查询user表中存在的所有班级的信息? in distinct mysql> select * from cl ...

随机推荐

  1. JavaWeb—Tomcat

    简介 Tomcat 是由 Apache 开发的一个 Servlet 容器,实现了对 Servlet 和 JSP 的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台.安全域管理 ...

  2. 17.出现fatal signal(SIGSEGV),code 1,fault addr 0x0 in tid 29931的问题

    原因是: 在onCreate方法里面调一些东西的时候,有时候系统相关的东西还没有初始化完,你的代码就已经执行了,会出现一些问题  解决方法: 增加延时1s /一.第一步初始化,此处用的是demo的ap ...

  3. java 多线程 day07 多线程共享数据

    /** * Created by chengtao on 17/12/3. * 多个线程 如何共享数据? * 常见实例:多个窗口同时售卖火车票 */public class Thread0701_Mu ...

  4. Python 学习笔记之random 模块

    要使用Random 模块里的一些随机数方法需要先导入random 模块. 下面是几种常用的随机数方法: 以生成随机8位密码,包括大小写字母,数字为例 pwd = ''.join(random.samp ...

  5. iOS学习之flappyBird游戏的实现

    导言 在本人还是学生的时候,flappyBird这款游戏非常火爆,最后等到Android版的出来之后,也是很痴迷的玩了一把.可是,本人游戏天赋一直平平,几度玩得想摔手机.本文主要介绍如何开发iOS平台 ...

  6. 图层的使用要点(CALayer)

    A,图层和路径 基本图层 CALayer 动画的主角 形状图层 CAShapeLayer 绘制不规则图形 渐变图层 CAGradientLayer 颜色渐变.阴影 复制图层 CAReplicatorL ...

  7. 来自IOS开发工程师的零基础自学HTML5经验分享

    移动互联网的火爆,而Html具有跨平台.开发快的优势,越来越受到开发者的青睐.感谢IOS开发工程师“小木___Boy”’带来的HTML5学习经验分享. 一.学习途径 1.很多视频网站 比如慕课.和极客 ...

  8. PL/SQL 创建用户及权限操作

    1.创建User create user user01 identified by user01, 2.赋予连接数据库的权限 grant connect to user01; 3.把user00的表E ...

  9. python-socket作业

    #客户端 import socket import threading import tkinter sock = socket.socket(socket.AF_INET, socket.SOCK_ ...

  10. JAVA BIO与NIO、AIO的区别

    IO的方式通常分为几种,同步阻塞的BIO.同步非阻塞的NIO.异步非阻塞的AIO. 一.BIO 在JDK1.4出来之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个ServerSock ...