一、字符串函数
1.返回字符串长度
SELECT userName , CHARACTER_LENGTH(userName) length FROM t_admin
2. 字符串合并
SELECT userName,userId,concat(userName,userId) str FROM t_admin
3. 数字格式化
保留小数点后n位,最后一位四舍五入
select FORMAT(1212.1255,2)
4. ip地址转化为数字
select INET_ATON("192.168.1.1") num
5. 数字转化为ip地址
select INET_NTOA(3232235777)ip
二、日期函数
1.返回指定日期加上指定天数后的日期
select CURRENT_DATE , ADDDATE(CURRENT_DATE,4) '四天后日期'
2.指定时间加上指定时间后的时间
select now() ,ADDTIME(now(),8)
select now() ,ADDTIME(now(),'1:10:5')
3. 两个日期相差天数
select DATEDIFF(CURRENT_DATE,ADDDATE(CURRENT_DATE,10))
4. 本年第几天
select now() ,DAYOFYEAR(now())
5. 根据对应格式返回日期
| 取值类型 | 说明 |
|---|---|
| hour | 小时 |
| minute | 分钟 |
| microsecond | 毫秒 |
| year | 年 |
| month | 月 |
| day | 日 |
| week | 周 |
| quarter | 季度 |
| year_month | 年和月 |
| day_hour | 日和小时 |
| day_minute | 日和分钟 |
| day_second | 日和秒 |
| hour_minute | 小时和分 |
| hour_second | 小时和秒 |
| minute_second | 分钟和秒 |
| second | 秒 |
select EXTRACT(day from now())
6. 获取季度数
select quarter(now())
7.返回时间指定的秒数
select now() ,second(now())
8.计算时间差
select now() ,TIMEDIFF(now(),addtime(now(),10))
9.从指定日期时间中提取日期值
select date(now())
10.指定时间小时数
select now() ,hour(now());
11.提取日期时间中时间部分
select now(),time(now())
12.根据表达式显示时间
select now(),TIME_FORMAT(now(),'%r')
13.返回指定日期中的年份
select now(),year(now())