Mysql日期格式
在Mysql中,日期数据类型包括DATE、TIME、DATETIME、TIMESTAMP、YEAR五种,它们都有各自的日期格式。
DATE
DATE类型存储格式为'YYYY-MM-DD'。
例如:
2022-01-01
TIME
TIME类型存储格式为'hh:mm:ss'。
例如:
14:30:00
DATETIME
DATETIME类型存储格式为'YYYY-MM-DD hh:mm:ss'。
例如:
2022-01-01 14:30:00
TIMESTAMP
TIMESTAMP类型存储格式为'YYYY-MM-DD hh:mm:ss',但是它允许 NULL 值,而 DATETIME 不允许 NULL 值。
例如:
2022-01-01 14:30:00
YEAR
YEAR类型存储格式为'YYYY'或'YY'(4位或2位)。
例如:
2022
Mysql日期函数
Mysql内置了很多常用的日期函数,下面介绍几个常用的日期函数。
NOW
NOW() 函数返回当前的日期和时间。
例如:
SELECT NOW() as now_time;
输出:
now_time |
---|
2022-01-01 14:30:00 |
DATE_FORMAT
DATE_FORMAT(date, format) 函数以指定的格式显示日期或时间值。
例如:
SELECT DATE_FORMAT(NOW(), "%Y-%m-%d") as date;
输出:
date |
---|
2022-01-01 |
DATE_ADD
DATE_ADD(date, INTERVAL value unit) 函数用于在日期上加上一个指定的时间间隔。
例如:
SELECT DATE_ADD(NOW(), INTERVAL 1 DAY) as tomorrow;
输出:
tomorrow |
---|
2022-01-02 14:30:00 |
DATEDIFF
DATEDIFF(date1, date2) 函数返回两个日期之间的天数。
例如:
SELECT DATEDIFF("2022-01-02", "2022-01-01") as diff;
输出:
diff |
---|
1 |
示例说明
示例一
现在我们要找出一个表格中所有注册时间在2022年之后的用户,可以使用以下语句:
SELECT *
FROM user
WHERE DATE_FORMAT(create_time, "%Y") >= "2022";
这里使用了 DATE_FORMAT 函数,将 create_time 字段格式化成年份,然后跟 "2022" 进行比较,只保留符合条件的行。
示例二
现在我们要统计一个表格中每个用户的购买总金额,可以使用以下语句:
SELECT user_id, SUM(amount) as total_amount
FROM order
GROUP BY user_id;
这里使用了 SUM 聚合函数,根据 user_id 分组,计算每个用户的购买总金额。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Mysql日期格式以及内置日期函数用法详解 - Python技术站