常见函数

1、LENGTH  :  得到参数的字节个数

SELECT LENGTH('abc')  --->  3 

-- 在utf8中一个汉字占3个字节,在gbk中一个汉字占2个字节
SELECT LENGTH('张大山') --->  9 

2、CONCAT  : 拼接字符串

SELECT CONCAT('张','_','大山')  --->  张_大山

3、UPPER、LOWER  : 字符大小转换

SELECT UPPER('aBc')  ---> ABC
 
SELECT LOWER('aBc') ---> abc

4、SUBSTR

-- 截取从指定索引处后面的所有字符
SELECT SUBSTR('今天天气真好!!!',3)  ---> 天气真好!!!

-- 截取从指定索引处指定长度的字符
SELECT SUBSTR('今天天气真好!!!',1,2)  ---> 今天

5、INSTR  

-- 返回参数值中第一次出现的索引,如果没有找到则返回0
SELECT INSTR('今天的天气真好!!!','天')   --->  2

6、TRIM

-- 去掉字符串前后空格
SELECT TRIM('     张大山    ')  ---> 张大山
-- 去掉字符串前后空格
SELECT TRIM('     张   大   山    ')  --->  张   大   山

-- 自定义替换规则,这里以aa为一个单位,山后面的a为单数所以最后出现了一个a
SELECT TRIM('aa' FROM 'aaaaaaaa张  aaaaaa 大 aaaa 山 aaaaaaaaa')  ---> 张  aaaaaa 大 aaaa 山 a

7、LPAD、RPAD

-- 用指定字符实现左填充指定长度,如果字符本身长度大于指定长度,则保留指定长度
SELECT LPAD('张大山',4,'a') ---> a张大山

SELECT LPAD('张大山',2,'a') ---> 张大

-- 用指定字符实现右填充指定长度,如果字符本身长度大于指定长度,则保留指定长度
SELECT RPAD('张大山',4,'a') ---> 张大山a

SELECT RPAD('张大山',2,'a') --->  张大

8、REPLACE 字符替换

SELECT REPLACE('今天的天气真好','天','日')  --->  今日的日气真好

9、ROUND  四舍五入

SELECT ROUND(1.55) ---> 2

SELECT ROUND(-1.55) ---> -2

-- 指定小数点后保留多少位
SELECT ROUND(1.56789,3) ---> 1.568

SELECT ROUND(-1.56789,3) ---> -1.568

10、CEIL  向上取整(返回该参数的最小整数)

SELECT CEIL(-1.02) --->  -1 

SELECT CEIL(1.02) --->  2

11、FLOOR  向下取整(返回该参数的最大整数)

SELECT FLOOR(-9.99)  ---> -10

SELECT FLOOR(9.99)  ---> 9

12、TRUNCATE  保留几位小数(不做取舍)

SELECT TRUNCATE(1.987654321,1) --->  1.9

13、MOD 取余

SELECT MOD(10,-3); ---> 1

SELECT MOD(-10,-3); ---> -1

SELECT MOD(-10,3); ---> -1

SELECT MOD(10,3); ---> 1

14、日期函数

-- 获取年月日
SELECT DATE(NOW()) ---> 2020-04-09
-- 获取年
SELECT YEAR(NOW()) ---> 2020
-- 获取月 
SELECT MONTH(NOW()) --->  4
-- 获取日
SELECT DAY(NOW()) ---> 9

15、STR_TO_DATE  将字符通过指定的格式转换成日期

SELECT STR_TO_DATE('2020-3-2','%Y-%m-%d') ---> 2020-03-02

16、DATE_FORMAT  将日期转换成字符串

SELECT DATE_FORMAT(NOW(),'%Y-%m-%d') ---> 2020-04-09
  
SELECT DATE_FORMAT(NOW(),'%Y年%m月%d日') ---> 2020年04月09日

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值