站点图标 IDC铺

MySql,(sql)时间类型,时间函数总结

MySql可以使用的时间格式有:

| 格式 | 描述 |
| %a | 缩写星期名 |
| %b | 缩写月名 |
| %c | 月,数值 |
| %D | 带有英文前缀的月中的天 |
| %d | 月的天,数值(00-31) |
| %e | 月的天,数值(0-31) |
| %f | 微秒 |
| %H | 小时 (00-23) |
| %h | 小时 (01-12) |
| %I | 小时 (01-12) |
| %i | 分钟,数值(00-59) |
| %j | 年的天 (001-366) |
| %k | 小时 (0-23) |
| %l | 小时 (1-12) |
| %M | 月名 |
| %m | 月,数值(00-12) |
| %p | AM 或 PM |
| %r | 时间,12-小时(hh:mm:ss AM 或 PM) |
| %S | 秒(00-59) |
| %s | 秒(00-59) |
| %T | 时间, 24-小时 (hh:mm:ss) |
| %U | 周 (00-53) 星期日是一周的第一天 |
| %u | 周 (00-53) 星期一是一周的第一天 |
| %V | 周 (01-53) 星期日是一周的第一天,与 %X 使用 |
| %v | 周 (01-53) 星期一是一周的第一天,与 %x 使用 |
| %W | 星期名 |
| %w | 周的天 (0=星期日, 6=星期六) |
| %X | 年,其中的星期日是周的第一天,4 位,与 %V 使用 |
| %x | 年,其中的星期一是周的第一天,4 位,与 %v 使用 |
| %Y | 年,4 位 |
| %y | 年,2 位 |

注意:这里没有季度的时间类型格式

获取年-季度例子:

CONCAT(字段A,”链接符号”,字段B):字段拼接函数

SELECT  CONCAT(DATE_FORMAT(日期类型字段,\’%Y\’),\’-\’,DATE_FORMAT(日期类型字段,QUARTER(DATE_FORMAT(日期类型字段,\’%Y-%m-%d\’))))
FROM (
SELECT * FROM 表名
) cb_view
GROUP BY CONCAT(DATE_FORMAT(日期类型字段,\’%Y\’),\’-\’,DATE_FORMAT(日期类型字段期,QUARTER(DATE_FORMAT(日期类型字段,\’%Y-%m-%d\’))))

MySql可以使用的时间函数有:

1.year(),从时间字段获取年

2.quarter(),从时间字段获取季度

3.month(),从时间字段获取月

4.week(),从时间字段获取周

5.yearweek(),从时间字段获取年和周

6.date_sub(), 从时间字段减去指定时间间隔

7.date_format(),时间格式化

8.to_days(),返回从0年开始的天数;

9.from_days(),根据天数,返回日期;

 

1、DATE() 函数:返回日期或日期时间表达式的日期部分;

2、str_to_date()函数:按照指定日期或时间显示格式 将字符串转换为日期或日期时间类型;

3、date_format()函数:按照指定日期或时间显示格式 输出日期或日期时间;

4、DATEDIFF() 函数:   返回两个日期之间的时间。

date_format()函数例子:

SELECT DATE_FORMAT(日期类型字段,\’%Y-%m-%d\’)
FROM (
SELECT * FROM 表名
) cb_view
GROUP BY DATE_FORMAT(日期类型字段,\’%Y-%m-%d\’)

DATEDIFF() 函数:语法

DATEDIFF(datepart,startdate,enddate)

startdate 和 enddate 参数是合法的日期表达式。

datepart 参数可以是下列的值:

| datepart | 缩写 |
| 年 | yy, yyyy |
| 季度 | qq, q |
| 月 | mm, m |
| 年中的日 | dy, y |
| 日 | dd, d |
| 周 | wk, ww |
| 星期 | dw, w |
| 小时 | hh |
| 分钟 | mi, n |
| 秒 | ss, s |
| 毫秒 | ms |
| 微妙 | mcs |
| 纳秒 | ns |

例子 1

使用如下 SELECT 语句:

SELECT DATEDIFF(day,\'2008-12-29\',\'2008-12-30\') AS DiffDate
退出移动版