mysql起止时间怎么写_【Mysql 学习】日期函数函数

本文详细介绍了MySQL中常用的日期和时间函数,包括获取当前日期、时间、完整的日期时间,以及如何进行日期时间的格式化、加减操作等。通过具体示例展示了如何使用这些函数来处理日期和时间数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

--curdate()返回当前日期mysql> select curdate();

+------------+

| curdate()  |

+------------+

| 2011-01-01 |

+------------+

1 row in set (0.00 sec)

--curtime()返回当前时间mysql> select curtime();

+-----------+

| curtime() |

+-----------+

| 09:23:15  |

+-----------+

1 row in set (0.00 sec)

--now()返回当前的时间和日期mysql> select now();

+---------------------+

| now()               |

+---------------------+

| 2011-01-01 09:23:25 |

+---------------------+

1 row in set (0.00 sec)

--unix_timestamp 返回日期date 的unix时间戳mysql> select unix_timestamp(now());

+-----------------------+

| unix_timestamp(now()) |

+-----------------------+

|            1293845026 |

+-----------------------+

1 row in set (0.00 sec)

--from_unixtime()返回unix时间戳的日期值mysql> select from_unixtime(unix_timestamp(now()));

+--------------------------------------+

| from_unixtime(unix_timestamp(now())) |

+--------------------------------------+

| 2011-01-01 09:24:17                  |

+--------------------------------------+

1 row in set (0.00 sec)

--week(date)返回日期date为这一年的第几周

--year(date)返回日期date 的年mysql> select week(now()),year(now());

+-------------+-------------+

| week(now()) | year(now()) |

+-------------+-------------+

|           0 |        2011 |

+-------------+-------------+

1 row in set (0.01 sec)

--hour(time)--返回time的小时

--minute(time)--返回time的分钟mysql> select hour(curtime()) ,minute(curtime());

+-----------------+-------------------+

| hour(curtime()) | minute(curtime()) |

+-----------------+-------------------+

|               9 |                25 |

+-----------------+-------------------+

1 row in set (0.00 sec)

--monthname(date)--返回date的月份mysql> select monthname(now());

+------------------+

| monthname(now()) |

+------------------+

| January          |

+------------------+

1 row in set (0.01 sec)

--date_format(date,fmt) 返回按照字符fmt格式的date值mysql> select date_format(now(),'%M,%D,%Y');

+-------------------------------+

| date_format(now(),'%M,%D,%Y') |

+-------------------------------+

| January,1st,2011              |

+-------------------------------+

1 row in set (0.00 sec)

--date_add(date, interval exp type) 返回一个日期或时间值加上一个时间间隔的时间值。mysql> select now() current,date_add(now(), interval 31 day ) after31days;

+---------------------+---------------------+

| current             | after31days         |

+---------------------+---------------------+

| 2011-01-01 09:27:41 | 2011-02-01 09:27:41 |

+---------------------+---------------------+

1 row in set (0.01 sec)

mysql> select now() current,date_add(now(), interval -31 day ) before31days ,date_add(now(), interval '-a_-2' year_month) after_oneyear_2month;

+---------------------+---------------------+----------------------+

| current             | before31days        | after_oneyear_2month |

+---------------------+---------------------+----------------------+

| 2011-01-01 09:29:32 | 2010-12-01 09:29:32 | 2010-11-01 09:29:32  |

+---------------------+---------------------+----------------------+

1 row in set (0.00 sec)

--datediff(date1,date2)从起始时间date1到结束时间date2之间的天数

mysql> select datediff('2007-09-15',now()) begin, datediff('2011-06-25',now()) end;

+-------+------+

| begin | end  |

+-------+------+

| -1204 |  175 |

+-------+------+

1 row in set (0.00 sec)

--计算从我上大学到现在的天数,和现在到我离开学校的天数。mysql> select abs(datediff('2007-09-15',now())) begin_days, datediff('2011-06-25',now())

end_days;

+------------+----------+

| begin_days | end_days |

+------------+----------+

|       1204 |      175 |

+------------+----------+

1 row in set (0.00 sec)

附录:mysql中的时间格式:说明符     说明

%a 工作日的缩写名称  (Sun..Sat)

%b 月份的缩写名称  (Jan..Dec)

%c 月份,数字形式(0..12)

%D 带有英语后缀的该月日期  (0th, 1st, 2nd, 3rd, ...)

%d 该月日期, 数字形式 (00..31)

%e 该月日期, 数字形式(0..31)

%f 微秒 (000000..999999)

%H 小时(00..23)

%h 小时(01..12)

%I 小时 (01..12)

%i 分钟,数字形式 (00..59)

%j 一年中的天数 (001..366)

%k 小时 (0..23)

%l 小时 (1..12)

%M 月份名称 (January..December)

%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位数)

%%‘%’文字字符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值