MySQL格式化时间去掉时分秒
在MySQL数据库中,时间数据类型包含日期和时间信息。有时候我们需要在查询结果中去掉时间的部分,只保留日期信息。本文将介绍如何使用MySQL的函数来格式化时间并去掉时分秒。
1. DATE()函数
DATE()函数是MySQL提供的一个用于获取日期部分的函数。它接受一个日期或日期时间值作为参数,并返回日期部分。
下面是使用DATE()函数格式化时间的示例代码:
SELECT DATE(datetime_column) AS formatted_date
FROM table_name;
这个示例查询从table_name
表中选择datetime_column
列,并使用DATE()函数将时间格式化为日期。结果将以formatted_date
的别名返回。
2. DATE_FORMAT()函数
DATE_FORMAT()函数是MySQL提供的另一个用于格式化时间的函数。它接受两个参数:日期或日期时间值以及一个指定格式的字符串。
下面是使用DATE_FORMAT()函数格式化时间并去掉时分秒的示例代码:
SELECT DATE_FORMAT(datetime_column, '%Y-%m-%d') AS formatted_date
FROM table_name;
这个示例查询从table_name
表中选择datetime_column
列,并使用DATE_FORMAT()函数将时间格式化为YYYY-MM-DD
格式的日期。结果将以formatted_date
的别名返回。
3. 示例
假设我们有一个名为orders
的表,其中有一个名为order_date
的列存储订单创建的日期和时间。我们希望查询订单的日期,而不需要时间部分。
下面是创建表格并插入一些示例数据的代码:
CREATE TABLE orders (
id INT PRIMARY KEY AUTO_INCREMENT,
order_date DATETIME
);
INSERT INTO orders (order_date) VALUES
('2022-01-01 10:30:00'),
('2022-01-02 15:45:00'),
('2022-01-03 09:00:00'),
('2022-01-04 18:20:00');
现在,我们可以使用上述介绍的函数来查询订单的日期,例如:
SELECT DATE(order_date) AS formatted_date
FROM orders;
这个查询将返回以下结果:
formatted_date |
---|
2022-01-01 |
2022-01-02 |
2022-01-03 |
2022-01-04 |
如果我们希望将日期格式化为YYYY年MM月DD日
的形式,可以使用DATE_FORMAT()函数:
SELECT DATE_FORMAT(order_date, '%Y年%m月%d日') AS formatted_date
FROM orders;
这个查询将返回以下结果:
formatted_date |
---|
2022年01月01日 |
2022年01月02日 |
2022年01月03日 |
2022年01月04日 |
4. 总结
通过使用MySQL的DATE()
函数和DATE_FORMAT()
函数,我们可以轻松地格式化时间并去掉时分秒。这在需要仅获取日期部分的查询中非常有用。在实际应用中,请根据您的需求选择合适的函数和日期格式。
希望本文对您理解如何在MySQL中格式化时间并去掉时分秒有所帮助。如果您有任何疑问或建议,请随时提出。感谢阅读!