MySQL-常用函数

#一:字符串截取处理 
#注:mysql中处理字符串时,默认第一个字符下标为1
SELECT LEFT('123456789',2) #left(str, length) 说明:left(被截取字段,截取长度) 
SELECT RIGHT('123456789',2) #right(str, length) 说明:right(被截取字段,截取长度)
#substring(str, pos, length)说明:substring(被截取字段,从第几位开始截取),substring(被截取字段,从第几位开始截取,截取长度),注:如果位数是负数 如-5 则是从倒数5位截取,到字符串结束或截取的长度
SELECT SUBSTRING('123456789',2)
SELECT SUBSTRING('123456789',-2)
SELECT SUBSTRING('123456789',-3,2)
#如果关键字出现的次数是正数 如2 从左边第2个开始选取左边的),如果关键字出现的次数是负数 如-2 从右边第2个开始选取右边的) 
SELECT SUBSTRING_INDEX("blog.jb51.net",".",2)
SELECT INSTR ("123456789","2") #INSTR (STRING ,SUBSTRING ):返回substring首次在string中出现的位置,不存在返回0
SELECT LENGTH ("ab") #string长度
SELECT REPLACE ("1211212112212" ,"1" ,"2" ) #REPLACE (str ,search_str ,replace_str 在str中用replace_str替换search_str
SELECT CONCAT("1",SPACE(5),"1") AS TEMP; #SPACE(count) 生成count个空格


#二:日期处理函数
SELECT CURDATE() #获取当前日期
SELECT CURTIME() #获取当前时间
SELECT NOW() #获取日期时间
SELECT DATE(NOW()) #返回日期部分

SELECT DAYOFYEAR (NOW())#一年中的第几天
SELECT WEEK (NOW()) #一年中的第几周
SELECT YEAR (NOW()) #获取当前年: year(time)
SELECT MONTH(NOW()) #获取当前月; month(time),monthname(time)
SELECT DAY(NOW()) #获取当前天; day(time)
SELECT HOUR (NOW()) #获取当前小时:hour(time)
SELECT MINUTE (NOW()) #获取当前分钟:minute(time)
SELECT SECOND (NOW()) #获取当前分秒:SECOND(time) 
SELECT DAYNAME(NOW()) #从时间中选择出今天是周几:weekday(date),dayname(date)

SELECT SUBDATE(NOW(),1) #间减去后面的day
SELECT DATE_ADD(CURDATE(),INTERVAL 1 DAY); #加一天
SELECT DATEDIFF('2018-05-22','2018-05-25'); #两个日期差
SELECT TIMEDIFF('12:27:46','1:25:45') #两个时间差
SELECT DATE_FORMAT(NOW(),'%Y-%m-%d %k:%i:%s') #时间格式化函数
SELECT TIME_TO_SEC(NOW()) #时间转秒数
SELECT SEC_TO_TIME (62399) #秒数转成时间

#三:拼接处理函数
SELECT CONCAT('大','小')
SELECT CONCAT('大',NULL)
SELECT CONCAT_WS('_','大','小','中')
SELECT CONCAT_WS('_','大','小',NULL)
#语法:group_concat( [distinct] 要连接的字段 [order by 排序字段 asc/desc ] [separator '分隔符'] )
SELECT NAME,GROUP_CONCAT(DISTINCT CONCAT_WS('-',id,`attribute_name`,`sell_price`) ORDER BY id ASC SEPARATOR ",") FROM `order_product` GROUP BY `name`


#四:其它常用函数
SELECT CHAR_LENGTH("ab") #获取字符串字符数函数:char_length(str)
SELECT UCASE("ab") #转换大写 ucase(x)
SELECT LCASE("AB") #转换小写 lcase(x)
SELECT TRIM(" abcd ") #去除字符串str两边的空格
SELECT ROUND('12.356',2) #四舍五入函数:round(x,y)
SELECT FORMAT('2.356',2) #数字x进行格式化
SELECT STRCMP(12,10) #STRCMP(expr1,expr2),expr1>expr2:1,expr1=expr2:0,expr1<expr2:-1
SELECT SIGN(-12) #SIGN (number2 ) // 正数返回1,负数返回-1
SELECT LEAST(1,-2,3,4) #LEAST (number,number2 [,..]) //求最小值


#五:系统信息函数
SELECT VERSION() #函数返回数据库的版本号;
SELECT CONNECTION_ID() #函数返回服务器的连接数,也就是到现在为止MySQL服务的连接次数;
SELECT DATABASE() #和SCHEMA()返回当前数据库名。
SELECT USER() #返回当前用户的名称

猜你喜欢

转载自www.cnblogs.com/lbky/p/10101291.html
今日推荐