五个知识体系之-SQL学习-第四天

5. MySQL常用函数

5.1字符串函数

concat(s1,s2....,s3)合并字符串,如果参数有null,则返回null;

CONCAT_WS(SEP,s1,s2…,sn) 合并字符串,并且按照分隔符串联起来,如果参数中有NULL值,直接忽略该参数。

eg:SELECT CONCAT ('password','001');

5.1.2、比较字符串大小

STRCMP(s1,s2),如果s1>s2,返回1。相等返回0,小于返回-1。

5.1.3、获取字符串长度

LENGTH() CHAR_LENGTH()

注意:LENGTH表示字符所占的字节长度,CHAR_LENGTH表示字符串的个数。

5.1.4、大小写转换函数

UPPER() UCASE() 将字符串转换成大写

LOWER() LCASE()将字符串转换成小写

5.1.5、截取字符串函数

LEFT(str,num)从左边截取num个字符,

RIGHT(str,num)从右变截取num个字符,

SUBSTRING(str,num,len)从地num个位置开始的len长度的字符串,MySQL下标是从1开始的。同MID(str,num,len)

【substring后不能有空格】

 

5.1.6、去除首尾空格

LTRIM(str) 去除左边空格

RTRIM(str) 去除右边空格

TRIM(str) 去除左右两边空格

5.1.7、替换字符串

INSERT(str,pos,len,newstr)

REPLACE(str,oldstr,newstr)

 5.2、数值函数

5.2.1、获取随机数

RAND()、RAND(x),其中RAND()是完全随机函数,RAND(x)随机数是相同的

eg:select rand();

5.2.2、获取整数函数

CEIL(x) 返回大于或者等于x的最小整数。

FLOOR(x) 返回小于或者等于x的最大整数。

5.2.3、截取数值函数

TRUNCATE(x,y) 返回数值x的小数点后y位的值。如果y为负数,则表示小数点左边截取y位。

5.2.4、四舍五入函数

ROUND(x) 数值x经过四舍五入操作后的数值

ROUND(x,y)保留数值x小数点后y位的数值,四舍五入。同样如果y为负数,表示小数点左边。

5.3、日期时间函数

5.3.1、获取当前日期和时间的函数

NOW(),CURRENT_TIMESTAMP(),LOCALTIME(),SYSDATE()

5.3.2、获取当前日期

CURDATE(),CURRENT_DATE()

这两个函数只会返回日期部分数据

5.3.3、获取当前时间

CURTIME(),CURRENT_TIME()

这两个函数只会返回时间部分数据

5.3.4、不同方式显示日期和时间

UNIX_TIMESTAMP() 以UNIX格式显示当前时间

YEAR(), 获取年

QUARTER(), 季度

MONTH(),月 MONTHNAME() 显示月份的名字

WEEK(),星期

DAYOFMONTH(),该月第几天,DAYOFYEAR(),该年的第几天

HOUR(),小时

MINUTE(),分

SECOND()秒

上述函数还有一个通用的表达方式 EXTRACT(type FROM date)

例如:

SELECT EXTRACT(YEAR FROM NOW()),EXTRACT(QUARTER FROM NOW()),
    EXTRACT(MONTH FROM NOW()),EXTRACT(WEEK FROM NOW()),
    EXTRACT(HOUR FROM NOW()),EXTRACT(MINUTE FROM NOW()),
    EXTRACT(SECOND FROM NOW())

5.3.5、与指定的日期时间操作

ADDDATE(),SUBDATE(),增加减少日期

ADDTIME(),SUBTIME(),增加减少时间

5.4、系统信息函数

VERSION(),获取数据库的版本信息

DATABASE(),获取数据库名

USER(),获取用户名

LAST_INSERT_ID()获取最后一条自动插入的ID

PASSWORD() 给字符串加密

原文地址:https://www.cnblogs.com/SH-xuliang/p/5611672.html