MySQL常用函数
本篇主要总结了一些在使用MySQL数据库中常用的函数,本篇大部分都是以实例作为讲解,如果有什么建议或者意见欢迎前来打扰。
limit
Select * from table order by column_name desc limit 2;
显示将table表中按照column_name属性进行降序排序的所有数据,并且只取前两行数据。
as
Select column_name as new_name from table;
这里的as是定义别名,将table表中的column_name使用别名new_name替换并显示数据。
count()
select count(*) from table;
显示table表中的数据条数;
select()
select sum(column_name) from table;
显示table表中的column_name所有属性值之和。
avg()
select avg(column_name) from table;
显示table表中的column_name属性值的平均值。
max()
select max(column_name) from table;
显示table表中的column_name属性值的最大值。
min()
select min(column_name) from table;
显示table表中的column_name属性值的最小值。
having
having的作用和where的作用类似,但是where不能和聚合函数(max,min,sum,avg等)一起使用,因此需要having。
比如,
select * from table where max(column_name);
就不符合语法,改为如下才符合
select * from table having max(column_name);
ucase()
ucase()把字段的值转化为大写
select ucase(column_name)as name from table;
将table表中的column_name的字段值的小写字段转化为大写字段。
lcase()
lcase()把字段的值转化为小写,
select lcase(column_name)as name from table;
将table表中的column_name的字段值的大写字段转化为小写字段。
mid()
mid()函数用于从文本字段中提取字符
select mid(name,1,4)as name from table;
将table表中的name的字段值提取1到4的这段字符数据(其中一个汉子和一个英文都视为一个字符)。
length()
length()函数返回文段中的长度,
select length(column_name)as name from table;
将table表中的column_name重置为name属性名并且每个值的长度。
round()
round() 函数用于把数值字段舍入为指定的小数位数。有两种用法分别如下:
round(x)
将x进行四舍五入
Select round(1.4);将会返回1
round(x,d)
将x按照小数位为d的规则进行四舍五入
Select round(1.4,2);将会返回1.40
now()
now()函数返回当前的系统日期和时间
select now() as time;
返回当前系统的时间0000-00-00 00:00:00的格式,并且作为字段time显示。
date_format()用于对显示的字段格式化
select date_format(now(),’%y-%m-%d’)as date;
在新的字段date下返回当前系统的年月日,并且按照格式0000-00-00。
select date_format(now(),’%h:%m:%s’);
在新的字段下返回当前系统的小时、分钟、秒,并且按照格式00:00:00。
char_length() 显示字符串长度函数
select char_length('abc');# 3
sin() 函数
select sin(1.2); # 0.9320390859672263
DATE_ADD() 日期相加函数
这个函数需要是要interval关键字,一个数字,一个单位,
select DATE_ADD('1998-01-02',interval 2 MONTH); # 1998-03-02
ADDDATE()函数
这个函数的用法比上面那个要简单
select ADDDATE('1998-01-02',3); # 1998-01-05
CURDATE()函数
select CURDATE();# 2018-03-14
curtime()函数
select curtime();# 22:23:31
MD5()函数
这个函数是MySQL中的MD5加密函数,因为MD5加密为不可逆加密,所以如果想明文看见密码,那么就不应该使用这种加密函数
select MD5('test'); #098f6bcd4621d373cade4e832627b4f6
encode(str,key) 和 decode(str,key) 加密与解密函数,使用key作为秘钥进行加密和解密的
SELECT DECODE(ENCODE("hello","password"),"password");#hello
空值函数:
ifnull(expr1,expr2):如果expr1为null,则返回expr2,否则返回expr1
nullif(expr1,expr2):如果expr1和expr2相等,则返回null,否则返回expr1
if(expr1,expr2,expr3):有点类似于?:三目运算符,如果expr1为true,不等于0,不等于null,则返回expr2,否则返回expr3.
isnull(expr):如果expr为null,则返回true,否则返回false
参考文章链接:
http://www.runoob.com/sql/sql-tutorial.html