技术思绪摘录旅行笔记
本文主要记录了一些平时用过的函数,没写到的,可能是没用到,也可能是我不知道,以后继续补充吧,小伙伴也可以留言告诉我

1、连接函数

CONCAT('字符串1','字符串2','字符串...')

2、获取当前时间

NOW()

3、判断是否为NULL

IFNULL(字段,为null填充值)

4、字符串转日期

STR_TO_DATE('2020-07-21 00:00:00', '%Y-%m-%d %H:%i:%s')
%Y:代表4位的年份 
%y:代表2为的年份
%m:代表月, 格式为(01……12) 
%c:代表月, 格式为(1……12)
%d:代表月份中的天数,格式为(00……31) 
%e:代表月份中的天数, 格式为(0……31)
%H:代表小时,格式为(00……23) 
%k:代表 小时,格式为(0……23) 
%h: 代表小时,格式为(01……12) 
%I: 代表小时,格式为(01……12) 
%l :代表小时,格式为(1……12)
%i: 代表分钟, 格式为(00……59) 【只有这一个代表分钟,大写的I 不代表分钟代表小时】
%r:代表 时间,格式为12 小时(hh:mm:ss [AP]M) 
%T:代表 时间,格式为24 小时(hh:mm:ss)
%S:代表 秒,格式为(00……59) 
%s:代表 秒,格式为(00……59)

5、日期转字符串

DATE_FORMAT(date,'%Y-%m-%d')

6、判断两个结果

IF([true/false],'true','false')

7、判断多个结果(类似switch)

CASE
WHEN '第一个判断' THEN 'true的结果'
WHEN '第二个判断' THEN 'true的结果'
ELSE '都不满足结果'
END

8、截取字符串

SUBSTR('原字符',0号位开始,截取5个长度)
SUBSTRING('原字符',0号位开始,截取5个长度)
SUBSTRING('原字符',从5号位置开始截取到最后)
SUBSTRING('原字符',-5 从倒数5号位置开始截取到指定位置)
LEFT('原字符',取左边3个长度)
RIGHT('原字符',取右边3个长度)
SUBSTRING_INDEX('原字符','指定字符',2第二个分隔符左边所有的内容)
比如:
SUBSTRING_INDEX('1,2,3',',',1) //1
SUBSTRING_INDEX('1,2,3',',',2)//1,2

9、获取字符串位置

FIND_IN_SET('字符','原字符')
LOCATE('字符','原字符')
比如:
SELECT FIND_IN_SET('b', 'a,b,c,d');  //2

10、替换

REPLACE('原字符',' ','') //去掉空格

11、获取时间差

TIMEDIFF(date1,date2)  //返回date1-date2=3  相差的小时数,时间类型 
DATEDIFF(date1,date2)  //返回date1-date2=3  相差的天数
TIMESTAMPDIFF(type,date1,date2) //返回date2-date1 相差的类型

FRAC_SECOND  表示间隔是毫秒
SECOND 秒
MINUTE 分钟
HOUR 小时
DAY 天
WEEK 星期
MONTH 月
QUARTER 季度
YEAR 年
比如
TIMESTAMPDIFF(YEAR ,'2018-01-01','2020-01-01')  //2
TIMEDIFF('2018-05-21 00:00:00','2018-05-19 00:00:00') //48:00:00

12、获取长度

LENGTH('123')

13、获取mysql服务版本号

VERSION()

14、获取当前连接数

CONNECTION_ID()

15、获取绝对值

ABS(-1) //1

16、获取平均数

AVG(字段)

17、获取最大值

GREATEST(30, 102, 304, 80, 205)   //304

18、获取最小值

LEAST(30, 102, 304, 80, 205)  //30

19、获取字段最大值

MAX(字段)

20、获取字段最小值

MIN(字段)

21、获取随机数

RAND()   //返回 0 到 1 的随机数

22、获取最近的整数

ROUND(1.63456) //2
ROUND(1.23456) //1

23、获取符号

SIGN(-10)  //-1
SIGN(10)  //1
SIGN(0)  //0

24、求和

SUM(字段)

25、保留几位小数

TRUNCATE(1.23456,3)   //1.234

26、转小写字母

LCASE('ADSDSAD')
LOWER('ADASDASD')

27、转大写字母

UCASE('asdasdads');
UPPER('asdasdas');

28、去掉前后空格

TRIM('    ASSSS    ')

29、去掉开头的空格

LTRIM('    ASDASS')

30、去掉结尾的空格

RTRIM('aasss    ')

31、获取当前时间戳

UNIX_TIMESTAMP()
UNIX_TIMESTAMP('2020-07-22')

32、补充中...


CarsonIT 微信扫码关注公众号 策略、创意、技术

留下您的脚步

 

最近评论

查看更多>>

站点统计

总文章数:275 总分类数:18 总评论数:88 总浏览数:124.87万

精选推荐

阅读排行

友情打赏

请打开您的微信,扫一扫