当前位置: 首页 > 面试题库 >

在MySQL中使用INTERVAL和CURDATE

云凌
2023-03-14
问题内容

我正在建立一个图表,我想接收每个月的数据。

这是我的第一个有效的要求:

SELECT s.GSP_nom AS nom, timestamp, AVG( v.vote +  v.prix  ) /2 AS avg
FROM votes_serveur AS v
INNER JOIN serveur AS s ON v.idServ = s.idServ
WHERE s.valide =1
AND v.date > CURDATE() -30
GROUP BY s.GSP_nom
ORDER BY avg DESC

但是,就我而言,我必须编写12个请求以接收前12个月的数据,有什么技巧可以避免写:

//  example for the previous month
 AND v.date > CURDATE() -60
AND v.date < CURDATE () -30

我听说过INTERVAL,我去了MySQL文档,但是我没有实现它。

有使用INTERVAL的例子吗?


问题答案:

您需要DATE_ADD/DATE_SUB

AND v.date > (DATE_SUB(CURDATE(), INTERVAL 2 MONTH))
AND v.date < (DATE_SUB(CURDATE(), INTERVAL 1 MONTH))

应该管用。



 类似资料:
  • 问题内容: 如果要在日期上加上5天,可以使用以下功能: 但是,我的表有一个名为的字段,我想将其添加到我的create_ts中。像这样的东西: 这是行不通的。我怎样才能在postgresql中做到这一点? 问题答案: 只需将值乘以一个间隔即可: 从Postgres 9.4开始,使用 函数可以更轻松地完成此操作:

  • 问题内容: 我正在使用Hibernate和MySQL的项目中。我打算使用序列来为数据库中的所有表生成ID。(很难描述我的问题,因此我将向您举例说明)。 例如:我有2个表A和B。首先,我在表A中插入10条记录, 它们的ID为1到10 。然后,我在表B中插入10条记录,我希望 它们的ID为11-20 ,而不是1-10。这意味着生成的ID值将由数据库中所有表(而不是单个表)中的所有记录计算。 那么如何在

  • interval 创建一个 Observable 每隔一段时间,发出一个索引数 interval 操作符将创建一个 Observable,它每隔一段设定的时间,发出一个索引数的元素。它将发出无数个元素。

  • interval 函数签名: interval(period: number, scheduler: Scheduler): Observable 基于给定时间间隔发出数字序列。 示例 示例 1: 每秒发出自增数字 ( StackBlitz | jsBin | jsFiddle ) // RxJS v6+ import { interval } from 'rxjs'; // 每1秒发出数字序列

  • real-interval 如果你用setTimeout或setInterval实现过网页倒计时功能,你就会发现: 当电脑或者APP休眠了一段时间后,倒计时会出现问题:它比正确的时间慢了。 real-interval能解决这个问题。 当休眠的电脑被唤醒后,它会计算出正确的运行时间,你的回调函数可以据此显示正确的剩余时间,或者判断何时应该停止倒计时。 安装 你可以通过npm安装real-interv

  • 问题内容: 我试图了解$ interval和setInterval之间的区别。我有这个测试: 使用 setInterval 不会更新HTML页面上的值,但实际上该值在浏览器控制台上会更改,但不会在HTML页面上更新。 但是如果我这样做: } 这似乎工作得很好,所以我真的不知道为什么后者不起作用,但是我真的很想知道。 同样,从后台不断请求数据的最佳方法是每隔n分钟说一次并通过其控制器更新页面。 问题