当前位置:Gxlcms > 数据库问题 > SQL --函数

SQL --函数

时间:2021-07-01 10:21:17 帮助过:2人阅读

这一章节主要谈谈SQL常用函数

一、求余函数MOD(x,y)

MOD(x,y) 返回x被y除后的余数,MOD()对于带有小数部分的数值也起作用,它返回除数后的精确余数。

例子

1.被除数和除数都是整数

技术分享

2.被除数或者除数带有相同位数小数

技术分享

技术分享

3.被除数和除数带有不同位数小数,返回小数位数以除数为准

技术分享

二、四舍五入函数ROUND(x,y) 和 截取小数点后n位函数TRUNCATE(x,y)

TRUNCATE(x,y)  返回被舍去至小数点后y位的数字x;若y的值为0,则结果不带小数部分。

1.小数点后0位

技术分享

2.小数点后1位

技术分享

ROUND(x,y)  返回被舍去至小数点后y位的数字x,x会四舍五入;若y的值为0,则结果不带小数部分,结果还是会四舍五入。

1.不带小数的四舍五入,四舍

技术分享

2.不带小数的四舍五入,五入

技术分享

3.带一位小数的五入

技术分享

备注:8.36带一位小数四舍五入,0.06>=0.05,所以五入。

4.带一位小数的四舍

技术分享

三、十六进制函数HEX(N_or_S)与反十六进制函数UNHEX(str)

1.对字符串进行十六进制编码

技术分享

2.对十六进制进行反码

技术分享

四、字符串函数

1.CHAR_LENGTH(str) 返回字符串str所包含的字符个数。

技术分享

2.CONCAT(str1,str2,...)  字符串拼接函数

技术分享

技术分享

3.字符串替换函数 INSERT (str,pos,len,newstr)

将字符串str中pos位置(从1开始计算)开始,长度为len的字符串用newstr代替

技术分享

4.字符串代替函数 REPLACE(str,from_str,to_str)

REPLACE(源字符串,需要替换的字符串,替换成的值)

技术分享

5.字符串填充函数 LPAD(str,len,padstr) 和 RPAD(str,len,padstr)

LPAD(源字符串,填充后字符串总长度,填充字符串),padstr填充到str的左边去,如果str的个数大于len,则返回拼接后len长度字符串。

技术分享

技术分享

技术分享

技术分享

RPAD(str,len,padstr),即向右拼接字符串

技术分享

6.删除空格(或指定字符)的函数  TRIM([remstr FROM] str)

TRIM(str)  删除字符串str两侧的空格,字符串中间的空格不能删除。

技术分享

//不能删除字符串中间的空格

技术分享

TRIM(‘removeStr‘ FROM str)  删除str中前面或者后面为removeStr的字符串,中间的不能删除,默认时删除空格。

技术分享

7.重复生成字符串函数  REPEAT (str,count)

REPEAT (需要重复的字符串,重复次数)

技术分享

技术分享

技术分享

8.字符串比较大小函数  STRCMP(expr1,expr2)

技术分享 

五、日期和时间函数

1.获取当期日期和当前时间的函数

技术分享

如上都是获取日期和时间的函数,我常用的是 sysdate。

2.如下都是时间函数

#查询年
SELECT YEAR(SYSDATE());
#查询月份数字
SELECT MONTH(SYSDATE());
#查询月份英文
SELECT MONTHNAME(SYSDATE());
#查询的是几号
SELECT DAY(SYSDATE());
#查询的是星期
SELECT DAYNAME(SYSDATE());
#查询现在的小时
SELECT HOUR(SYSDATE())
#查询现在的分钟
SELECT MINUTE(SYSDATE());
#查询现在的秒数
SELECT SECOND(SYSDATE());
#时间转换为秒钟
SELECT TIME_TO_SEC(SYSDATE());
#秒钟转换为时间
SELECT SEC_TO_TIME(65393)
#日期格式化 http://www.w3school.com.cn/sql/func_date_format.asp
SELECT DATE_FORMAT(SYSDATE(),‘%Y%m%d‘)
#时间格式化
SELECT TIME_FORMAT(SYSDATE(),‘%H%i%s‘)




SQL --函数

标签:

人气教程排行