MySQL 查询时间范围示例

在数据库管理中,经常需要根据时间范围来进行数据查询操作。今天我们来学习如何使用MySQL查询时间在昨天8点到今天8点之间的数据。

准备工作

在进行查询之前,首先要确保你已经安装并配置好了MySQL数据库。接下来我们假设我们有一个名为orders的表,里面存储了订单相关的信息,包括订单号、金额、下单时间等字段。

查询时间范围的SQL语句

要查询时间在昨天8点到今天8点之间的数据,我们可以使用MySQL中的BETWEEN关键字结合AND来实现。具体的SQL语句如下:

SELECT * FROM orders
WHERE order_time BETWEEN DATE_SUB(CURDATE(), INTERVAL 1 DAY) + INTERVAL 8 HOUR 
AND CURDATE() + INTERVAL 8 HOUR;

以上SQL语句中,DATE_SUB(CURDATE(), INTERVAL 1 DAY) + INTERVAL 8 HOUR表示昨天8点,CURDATE() + INTERVAL 8 HOUR表示今天8点。

示例数据

假设我们的orders表中有如下数据:

订单号 金额 下单时间
1 100 2022-01-20 07:59:59
2 200 2022-01-20 08:00:01
3 300 2022-01-21 07:59:59
4 400 2022-01-21 08:00:01

查询结果

我们执行上述SQL语句后,会得到订单号为2的数据,因为它的下单时间在昨天8点到今天8点之间。执行结果如下:

订单号 金额 下单时间
2 200 2022-01-20 08:00:01

可视化展示

为了更直观地展示查询结果,我们可以使用饼状图来显示不同时间段的订单金额占比。下面使用mermaid语法中的pie标识出饼状图:

pie
    title 订单金额占比
    "昨天订单金额" : 300
    "今天订单金额" : 600

除此之外,我们还可以使用旅行图来展示订单号为2的订单在时间轴上的位置。下面使用mermaid语法中的journey来标识出旅行图:

journey
    title 订单号2的下单时间
    section 2022-01-20
    section 2022-01-21
    journey 2 : 2022-01-20 08:00:01

总结

通过本文的学习,我们了解了如何使用MySQL查询时间在昨天8点到今天8点之间的数据,也学会了如何用饼状图和旅行图来展示查询结果。希望这篇文章对你有所帮助,谢谢阅读!