📜  mysql 两个日期之间的日期 - SQL (1)

📅  最后修改于: 2023-12-03 14:44:28.018000             🧑  作者: Mango

MySQL 中两个日期之间的日期

在 MySQL 中,我们可以使用 BETWEEN 语句和 DATE_ADD 函数来获取两个日期之间的日期列表。

语法
SELECT *
FROM table_name
WHERE date_column BETWEEN start_date AND end_date;

或者使用 DATE_ADD 函数:

SELECT *
FROM table_name
WHERE date_column >= start_date
  AND date_column <= DATE_ADD(start_date, INTERVAL num_of_days DAY);
示例

假设我们有一张名为 orders 的表格,其中包含以下列:

| 列名 | 类型 | | ---------- | ---------- | | order_id | INT | | order_date | DATE | | customer | VARCHAR(50) |

我们想获取 2021 年 6 月 1 日至 2021 年 6 月 30 日之间所有订单的列表:

SELECT *
FROM orders
WHERE order_date BETWEEN '2021-06-01' AND '2021-06-30';

或者使用 DATE_ADD 函数:

SELECT *
FROM orders
WHERE order_date >= '2021-06-01'
  AND order_date <= DATE_ADD('2021-06-01', INTERVAL 29 DAY);

以上两个例子将返回 2021 年 6 月 1 日至 2021 年 6 月 30 日之间的所有订单。

注意事项

请注意,以上示例中的日期格式为 YYYY-MM-DD。如果您的日期列有不同的格式,请相应地更改查询中的日期格式。

另外,请确保 start_date 小于或等于 end_date,否则将不会返回任何结果。

结论

通过使用 BETWEEN 语句和 DATE_ADD 函数,我们可以轻松地获取 MySQL 中两个日期之间的日期列表。这使得我们可以轻松地计算日期范围内的数据。