MySQL学习笔记_7_MySQL常用内置函数
MySQL常用内置函数
说明:
1)可以用在SELECT/UPDATE/DELETE中,及where,orderby,having中
2)在函数里将字段名作为参数,变量的值就是字段所对应的每一行的值。
3)在程序设计语言如C++中提供的函数,MySQL大部分也提供了,关于MySQL函数的完整信息,请参阅《MySQL参考手册》
一、字符串函数【比较常用,需要掌握】
1、
concat(s1,s2,...,sn) #把传入的参数连接成一个字符串
selectconcat('abc','def');
selectconcat(name,' age is ',age) from users;
2、insert(str,m,n,inser_str)
#将str的从m位置开始的n个字符替换为inser_str
selectinsert('abcdef',2,3,'123456');
selectinsert(name,3,2,'HAHA') from users;
selectinsert(name,2,2,'00') from users;
3、lower(str)/upper(str)
#将字符串str转换成小写/大写
selectlower('HELLO'),upper('hello');
selectlower('HELLO') as 'HELLO',upper('hello')as
'HELLO';
select* from users where upper(name) = 'AAA';
4、left(str,n)/right(str,n)
#分别返回str最左边/最右边的n个字符,如果n<=>
NULL 则任何东西不返回
selectleft('123',3),right('123456',3),left('123',NULL);
5、lpad(str,n,pad)/rpad(str,n,pad)
#用字符串pad对str的最左边/最右边进行填充,知道满足str含有n个字符为止
selectname,lpad(name,10,'#'),rpad(name,10,'@') from users;
6、trim(str)/ltrim(str)/rtrim(str)
#去除字符串str左右空格/左空格/右空格
selectconcat('#',trim(" abc "),'#'),concat('#',ltrim(' abc '),'#'),concat('#',rtrim(' abc '),'#');
7、replace(str,sear_str,sub_str)
#将字符串str中所有出现的sear_str字符串替换为sub_str
select replace('abcdefgabcd','cd','XXX') ;
8、strcmp(str1,str2)
#以ASCII码比较字符串str1,str2,返回-1(str1<
str2)/0(str1= str2)/1(str1 > str2)
selectstrcmp('aa','bb'),strcmp('aa','aa'),strcmp('bb','aa');
9、substring(str,n,m)
#返回字符串str中从n起,m个字符长度的字符串
selectsubstring('abcdef',2,3);
selectname,substring(name,1,2) as subname from users;
二、数值函数
1、abs(x)
#返回x的绝对值
selectabs(10),abs(-10);
selectabs(age) from users;
2、ceil(x)
#返回大于x的最小整数
3、floor(x)
#返回小于x的最大整数
selectceil(2.1),ceil(2.5),ceil(2.9),floor(2.1),floor(2.5),floor(2.9);
4、mod(x,y)
#返回x/y的模,与x%y作用相同
selectmod(null,11);
5、rand()
#返回0~1之间的随机数
selectrand();
selectceil(rand() * 100); #取0~100之间的整数随机数
selectfloor(rand() * 100);
6、round(n,m)
#返回n四舍五入之后含有m位小数的值,m值默认为0
selectround(1.23);
selectround(1.456,2);
7、truncate(n,m)
#返回数字n被截断为m位小数的数值
selecttruncate(1.234,2);
selecttruncate(1.235,2),round(1.235,2);
三、日期函数
1、curdate()
#返回当前日期
2、curtime()
#返回当前时间
selectcurdate(),curtime();
3、now()
#返回当前日期+时间
selectnow();
4、unix_timestamp(now())#返回unix当前时间的时间戳
selectunix_timestamp(now()); #从计算机元年(1971-1-100:00:00)到现在的秒数
5、from_unixtime()
#将时间戳(整数)转换为“日期+时间(xx-xx-xxxx:xx:xx)”的形式
selectfrom_unixtime(1392853616);
6、week(now())
#返回当前时间是第几周
7、year(now())
#返回当前是XX年
8、hour(now())/hour(curtime())
#返回当前时间的小时数
9、minute(curtime())
#返回当期的分钟数
...
selectweek(now()),year(now()),hour(now());
selectweek(from_unixtime(1392853616)); #返回unix时间戳中的周期数
10、monthname(now())/monthname(curdate())
#返回当前月的英文名
11、date_format(now(),"%Y-%M-%D%H:%I%S")
#将当期时间格式化
selectdate_format(now(),"%Y-%m-%d %H:%i%s");
selectdate_format(now(),"%y%m%d %H:%i%s");
四、流程控制函数
1、if(value,true,false)
#如果value值为真,则返回true,否则,返回false
selectif (salary > 3000,'Hight','Low') from salary;
selectid,salary, if (salary <=> NULL,'NULL','NOT NULL') from salary;
2、ifnull(value1,value2)#如果value1不为空,则返回value1,不然返回value2
#可以用来进行空值替换
selectifnull(salary,0.00) from salary;
3、casewhen
[value] then … else …end #如果value值为真,执行then之后的语句,不然执行eles后的语句,不要忘记end!
selectcase when salary <= 3000 then "Low" else "Hight"end from salary;
五、其他函数
1、database()
#当前数据库
2、version()
#当前数据库版本
3、user()
#当前登录用户
selectdatabase();
4、inet_aton(ip)
#ip地址的网络字节顺序
selectinet_aton('192.168.139.1');
5、inet_ntoa
#返回数字所代表的ip
selectinet_ntoa(3232271105);
6、password(str)
#返回加密的str字符串
selectpassword("123456"); #返回一个41位长的加密字符串,只是用于给MySQL系统用户进行加密
7、md5()
#在应用程序中进行数据加密,比如在C++程序中
selectmd5(“123456”);
MySQL学习笔记_7_MySQL常用内置函数的更多相关文章
- hive学习笔记之七:内置函数
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- mySQL学习入门教程——4.内置函数
四.内置函数: 包括了字符串函数.数值函数.日期函数.流程控制函数.其他函数(获取数据库信息)... 一.字符串函数[比较常用,需要掌握]1. concat(s1,s2,...,sn) #把传入的 ...
- Prometheus监控学习笔记之PromQL 内置函数
概述 Prometheus 提供了其它大量的内置函数,可以对时序数据进行丰富的处理.某些函数有默认的参数,例如:year(v=vector(time()) instant-vector).其中参数 v ...
- python学习三十八天常用内置函数分类汇总
python给我们提供丰富的内置函数,不用去写函数体,直接调用就可以运行,很方便快速给我提供开发所需要的函数. 1,查内存地址 id() 变量的内存地址 id() 2,输入输出 input() pr ...
- python学习笔记六:内置函数
一.数学相关 1.绝对值:abs(-1) 2.最大最小值:max([1,2,3]).min([1,2,3]) 3.序列长度:len('abc').len([1,2,3]).len((1,2,3)) 4 ...
- Python的常用内置函数介绍
Python的常用内置函数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.取绝对值(abs) #!/usr/bin/env python #_*_coding:utf-8_ ...
- MYSQL常用内置函数详解说明
函数中可以将字段名当作变量来用,变量的值就是该列对应的所有值:在整理98在线字典数据时(http://zidian.98zw.com/),有这要一个需求,想从多音字duoyinzi字段值提取第一个拼音 ...
- Python常用模块中常用内置函数的具体介绍
Python作为计算机语言中常用的语言,它具有十分强大的功能,但是你知道Python常用模块I的内置模块中常用内置函数都包括哪些具体的函数吗?以下的文章就是对Python常用模块I的内置模块的常用内置 ...
- PYTHON语言之常用内置函数
一 写在开头本文列举了一些常用的python内置函数.完整详细的python内置函数列表请参见python文档的Built-in Functions章节. 二 python常用内置函数请注意,有关内置 ...
随机推荐
- 利用JAVA多线程来提高数据处理效率
肿瘤大数据挖掘中经常需要处理上百亿行的文本文件,这些文件往往高达数百GB,假如文件结构简单统一,那么用sed和awk 处理是非常方便和快速的.但有时候会遇到逻辑较为复杂的处理流程,这样我一般会用JAV ...
- Python3 SMTP发送邮件
SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式. python的smtplib提供了一 ...
- CodeBlocks使用小技巧
1.基本使用: CodeBlocks使用介绍 2.一定要建项目才能编译运行代码吗? 不一定,也可以直接新建文件,直接运行. 如何管理这些未纳入项目的文件?通过左侧Management面板,切换到Fil ...
- Bootstrap3 代码-代码块
多行代码可以使用 <pre> 标签.为了正确的展示代码,注意将尖括号做转义处理. <p>Sample text here...</p> <pre>< ...
- SpringMVC+Spring+Mybatis整合,使用druid连接池,声明式事务,maven配置
一直对springmvc和mybatis挺怀念的,最近想自己再搭建下框架,然后写点什么. 暂时没有整合缓存,druid也没有做ip地址的过滤.Spring的AOP简单配置了下,也还没具体弄,不知道能不 ...
- Eclipse调试(1)——基础篇
作为使用Eclipse的程序员都会使用它的Debug.但是有不少人只会用F6.F8,其他功能知之甚少.今天我就来总结一下我在使用eclipse的debug时的一些个人经验.水平有限,不足之处还请赐教. ...
- Linux 高性能服务器编程——TCP/IP协议族
1 TCP/IP协议族体系结构 数据链路层: 职责:实现网卡接口的网络驱动程序,一处理数据在物理媒介(如以太网.令牌环等)上的传输. 常用协议:ARP协议(地址解析协议),RARP协议 ...
- Spark技术内幕:Sort Based Shuffle实现解析
在Spark 1.2.0中,Spark Core的一个重要的升级就是将默认的Hash Based Shuffle换成了Sort Based Shuffle,即spark.shuffle.manager ...
- RxJava(七) 使用debounce操作符 优化app搜索功能
欢迎转载,转载请标明出处: http://blog.csdn.net/johnny901114/article/details/51555203 本文出自:[余志强的博客] 一.抛出问题 现在几乎所有 ...
- ZAB协议
zookeeper依赖zab协议来实现分布式数据一致性.基于该协议,zookeeper实现了一种主备模式的系统架构来保持ZooKeeper为高可用的一致性协调框架,自然的ZooKeeper也有着一致性 ...