按上个月、上周、昨天等查询

发布于 2024-11-04 09:09:37 字数 209 浏览 2 评论 0原文

我有 orders 表,其中包含 orderID & 订单日期

我试图查询上周、上个月甚至昨天的数据,但是我不知道如何从当前时间减去时间

我的 order_date 字段是 TIMESTAMP 类型,任何想法,任何帮助,将不胜感激

I have orders table, which contains orderID & order_date.

I'm trying to query the data by last week, last month, or even by yesterday, however I can't figure out how to subtract time from current time

My order_date field is of TIMESTAMP type, any idea, any help, would be appreciated

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

十六岁半 2024-11-11 09:09:37

您可以使用 DATE_SUB:

... WHERE order_date > DATE_SUB( NOW(), INTERVAL 1 MONTH )

获取上个月、

... WHERE order_date > DATE_SUB( NOW(), INTERVAL 1 WEEK )

获取上周、

... WHERE order_date > DATE_SUB( NOW(), INTERVAL 1 DAY )

获取今天和

... WHERE order_date BETWEEN ( DATE_SUB( NOW(), INTERVAL 2 DAY ), DATE_SUB( NOW(), INTERVAL 1 DAY ) )

获取前一天。

这是你要求的吗?

You can use DATE_SUB:

... WHERE order_date > DATE_SUB( NOW(), INTERVAL 1 MONTH )

for taking last month,

... WHERE order_date > DATE_SUB( NOW(), INTERVAL 1 WEEK )

for getting last week,

... WHERE order_date > DATE_SUB( NOW(), INTERVAL 1 DAY )

for getting today and

... WHERE order_date BETWEEN ( DATE_SUB( NOW(), INTERVAL 2 DAY ), DATE_SUB( NOW(), INTERVAL 1 DAY ) )

for getting previous day.

Is it what you asked for?

岁吢 2024-11-11 09:09:37

这里的线索是 DATEDIFF 和 HAVING。

过去 30 天尝试这样的事情(凭记忆):

SELECT orderID, DATEDIFF(order_date, NOW()) AS days FROM table HAVING days <= 30

The clue here is DATEDIFF and HAVING.

For last 30 days try something like this (from memory):

SELECT orderID, DATEDIFF(order_date, NOW()) AS days FROM table HAVING days <= 30
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文