MySQL入门命令之函数-单行函数-日期函数

1、now 返回当前系统日期+时间

mysql> select now();
+---------------------+
| now()               |
+---------------------+
| 2021-04-04 15:44:39 |
+---------------------+
1 row in set (0.00 sec)

2、curdate 返回系统当前日期,不包含时间

mysql> select curdate();
+------------+
| curdate()  |
+------------+
| 2021-04-04 |
+------------+
1 row in set (0.00 sec)

3、cuetime 返回系统当前时间,不包含日期

mysql> select curtime();
+-----------+
| curtime() |
+-----------+
| 15:45:45  |
+-----------+
1 row in set (0.00 sec)

4、year–单独获取系统当前时间的年份
month–单独获取系统当前时间的月份
monthname–单独获取系统当前时间的月份的英文名称
day–单独获取系统当前时间的月份
hour–单独获取系统当前时间的月份
minute–单独获取系统当前时间的月份
second–单独获取系统当前时间的月份

mysql> select year(now());
+-------------+
| year(now()) |
+-------------+
|        2021 |
+-------------+
1 row in set (0.00 sec)

mysql> select year('1998-1-1');
+------------------+
| year('1998-1-1') |
+------------------+
|             1998 |
+------------------+
1 row in set (0.00 sec)

mysql> select monthname(now());
+------------------+
| monthname(now()) |
+------------------+
| April            |
+------------------+
1 row in set (0.00 sec)
mysql> select day(now());
+------------+
| day(now()) |
+------------+
|          4 |
+------------+
1 row in set (0.00 sec)

mysql> select hour(now());
+-------------+
| hour(now()) |
+-------------+
|          16 |
+-------------+
1 row in set (0.00 sec)

mysql> select minute(now());
+---------------+
| minute(now()) |
+---------------+
|             0 |
+---------------+
1 row in set (0.00 sec)

mysql> select second(now());
+---------------+
| second(now()) |
+---------------+
|            54 |
+---------------+
1 row in set (0.00 sec)

mysql> select minute(now());
+---------------+
| minute(now()) |
+---------------+
|             1 |
+---------------+
1 row in set (0.00 sec)

5、str_to_date 将字符串通过指定格式转换成日期

mysql> select str_to_date('1999-3-2','%Y-%c-%d') as date;
+------------+
| date       |
+------------+
| 1999-03-02 |
+------------+
1 row in set (0.00 sec)
#实例
mysql> select last_name,hiredate from employees where hiredate=str_to_date('1992-4-3','%Y-%c-%d');
+-----------+---------------------+
| last_name | hiredate            |
+-----------+---------------------+
| K_ing     | 1992-04-03 00:00:00 |
| Kochhar   | 1992-04-03 00:00:00 |
| De Haan   | 1992-04-03 00:00:00 |
| Hunold    | 1992-04-03 00:00:00 |
| Ernst     | 1992-04-03 00:00:00 |
+-----------+---------------------+
5 rows in set (0.00 sec)

6、date_format 将字符转换为日期

mysql> select date_format(now(),'%y年%c月%d日');
+-----------------------------------+
| date_format(now(),'%y年%c月%d日') |
+-----------------------------------+
| 21404|
+-----------------------------------+
1 row in set (0.00 sec)
#实例
mysql> select last_name,date_format(hiredate,'%m月%d日%y年') as入职时间
    -> from employees
    -> where hiredate=str_to_date('1992-4-3','%Y-%c-%d');
+-----------+--------------+
| last_name | as入职时间   |
+-----------+--------------+
| K_ing     | 040392|
| Kochhar   | 040392|
| De Haan   | 040392|
| Hunold    | 040392|
| Ernst     | 040392|
+-----------+--------------+
5 rows in set (0.00 sec)

7、datediff 查询两个日期之间的差值

mysql> select max(hiredate),min(hiredate),datediff(max(hiredate),min(hiredate)) asfrom employees;
+---------------------+---------------------+------+
| max(hiredate)       | min(hiredate)       ||
+---------------------+---------------------+------+
| 2016-03-03 00:00:00 | 1992-04-03 00:00:00 | 8735 |
+---------------------+---------------------+------+
1 row in set (0.00 sec)

在这里插入图片描述

更多MySQL命令

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值