最近 x 个月的排名查询

     2023-03-31     223

关键词:

【中文标题】最近 x 个月的排名查询【英文标题】:Ranking query from the last x months 【发布时间】:2017-04-20 21:49:23 【问题描述】:

我想从我的 MySQL 服务器获取过去 x 个月的所有记录。以 2 个月为例(不是从过去 2 个月开始,比如过去 60 天,而是从过去一个月开始等等。如果实际月份是 4 月,我想要 2 月和 3 月的所有记录)。 我尝试了一些查询,最后一个是

SELECT id FROM ranking WHERE (end_date BETWEEN DATE_FORMAT(NOW(), '%Y-%m-01') AND DATE_FORMAT(LAST_DAY(NOW() - INTERVAL 2 MONTH), '%Y-%m-%d'))

“end_date”是我的日期列,它是 DATE 列“2017-04-07”。

上面的查询什么也没返回,我不知道错误在哪里。

【问题讨论】:

end_date 是什么数据类型? 尝试在您的查询“end_date >= dateadd(month, -2, getdate())”中使用它。让我知道它是否有效 @McNets,这只是一个例子,哈哈。实际的查询要大得多,也更复杂一些,所以我对其进行了简化以涵盖“错误”,我必须承认我在发明列名方面很糟糕:/ 【参考方案1】:

试试这个:

SELECT id
FROM ranking
WHERE end_date BETWEEN
DATE_ADD(LAST_DAY(DATE_SUB(NOW(), INTERVAL 3 MONTH)) INTERVAL 1 DAY)
AND LAST_DAY(DATE_SUB(NOW(), INTERVAL 1 MONTH));

它像这样计算日期:

对于范围内的开始日期,它从当前日期减去 3 个月,获取该月的最后一天并在其中添加一天以获得下个月的第一天(在我们的例子中是 2 月 1 日) 对于结束日期,它从当前日期减去一个月,并获得该月的最后一天(在我们的例子中是 3 月 31 日)

【讨论】:

是的,就是这样!非常感谢。【参考方案2】:

尝试不将其转换为字符串,并且 BETWEEN 首先需要最小日期。

SELECT id 
FROM ranking 
WHERE end_date BETWEEN LAST_DAY(CAST(NOW() as date) - INTERVAL 2 MONTH 
               AND CAST(NOW() as date)

【讨论】:

如果我想获取 2 个月到现在的记录,那将是可行的,但是正如我所说,无论如何我只想获取过去几个月的记录,谢谢您的帮助

查询给定日期 X 个月的销售总额

】查询给定日期X个月的销售总额【英文标题】:QuerytosumsalestotalsforXnumberofmonthsgivendates【发布时间】:2015-07-2003:11:56【问题描述】:我想查询每个产品ID在一组月份(即5月-8月)的总销售额我想要:+------------+-------------------------+-... 查看详情

如何使用 cassandra 查询获取最近 6 个月的数据与时间戳列进行比较?

】如何使用cassandra查询获取最近6个月的数据与时间戳列进行比较?【英文标题】:HowtogetLast6Monthdatacomparingwithtimestampcolumnusingcassandraquery?【发布时间】:2017-08-2903:42:40【问题描述】:如何使用cassandra查询与timestamp列进行比较来获... 查看详情

php+mysql中怎么查询最近12个月每个月的数据

我想统计最近12个月每个月的销售额,请问语句怎么写参考技术A这个得看你数据库表具体字段怎么设计的啊,select销售额FROM表WHERE时间>去年的今天 查看详情

如何在 sql server 中获取最近 3 个月的名称

】如何在sqlserver中获取最近3个月的名称【英文标题】:Howtogetlast3monthnameinsqlserver【发布时间】:2015-11-2506:49:27【问题描述】:我的查询是SELECTCONVERT(CHAR,DATENAME(MONTH,IssueDate))ASMonthName,ItemId,COUNT(CONVERT(VARCHAR,IssueDate,6))ASWorkingDaysFROMdbo 查看详情

mysql查询:最近三个​​月的数据

】mysql查询:最近三个​​月的数据【英文标题】:mysqlquery:datafromlastthreemonths【发布时间】:2011-08-0913:30:48【问题描述】:我正在查询过去三个月的一些数据,唯一的问题是我得到的一些数据在某些月份没有条目。由于他们没有... 查看详情

如何根据 Power BI 报表中选定的月份筛选器在 MDX 查询中显示最近六个月的数据(每个月一行)?

...如何根据PowerBI报表中选定的月份筛选器在MDX查询中显示最近六个月的数据(每个月一行)?【英文标题】:Howtoshowlastsixmonthsdata(onerowforeachmonth)inMDXquerybasedonselectedmonthfilterinPowerBIreport?【发布时间】:2019-06-0418:18:48【问题描述】:... 查看详情

仅在 MySQL 中返回最近 3 个月的记录

】仅在MySQL中返回最近3个月的记录【英文标题】:Returningrecordsfromthelast3monthsonlyinMySQL【发布时间】:2013-03-1321:40:10【问题描述】:我有一个带有时间戳字段的表。如何获取过去3个月的数据?特别是,3月是我当前的月份,比如说0... 查看详情

排名趋势公式

开始这里有个连续几个月的个人销售数据,如:           图1.要求对个人销量按月进行排名,还能够描述出一个人在连续几个月的排名趋势,是上升还是下降,连续上升多少个月,连续下... 查看详情

如何获得最近 4 个月的平均值

】如何获得最近4个月的平均值【英文标题】:howgetthelast4monthsaveragevalue【发布时间】:2018-09-0111:59:30【问题描述】:我正在尝试此聚合最近4个月记录每个月的臭氧平均值但平均值为空如何获得平均值db.Air_pollution.aggregate([$match:CRE... 查看详情

在 BigQuery 中减去最近 3 个月的数据

】在BigQuery中减去最近3个月的数据【英文标题】:Subtractinglast3monthsdatainBigQuery【发布时间】:2020-08-2017:06:11【问题描述】:在BigQuery中,我正在寻找如何减去过去3个月的数据。这是我目前的想法,但这包括本月的数据,因为它使... 查看详情

从 Netezza 数据库中获取最近 24 个月的数据

】从Netezza数据库中获取最近24个月的数据【英文标题】:Getthelast24monthsofdatafromNetezzadatabase【发布时间】:2017-03-2318:42:40【问题描述】:我想从我们的netteza数据库中提取过去24个月的数据,但不包括最近两个季度(当前季度和上... 查看详情

Hive - 如何从 Hive 获取最近几个月的数据?

】Hive-如何从Hive获取最近几个月的数据?【英文标题】:Hive-HowdoIgetlastmonthsofdatafromHive?【发布时间】:2015-06-0313:07:14【问题描述】:如何从Hive获取最近2个月的数据?这是我的尝试:select(date_add(FROM_UNIXTIME(UNIX_TIMESTAMP(),\'yyyy-MM-dd\'... 查看详情

Power BI:需要计算最近 3 个月的 MTD 销售额

】PowerBI:需要计算最近3个月的MTD销售额【英文标题】:PowerBI:NeedtoCalculateLast3MonthsMTDSales【发布时间】:2021-03-1112:40:37【问题描述】:我有一个场景,我必须根据当前月份的MTD过滤过去3个月的销售额。例如:如果所选月份是3月... 查看详情

获取按月分组的最近 12 个月的数据,即使为 0

】获取按月分组的最近12个月的数据,即使为0【英文标题】:Getlast12monthsofdatagroupedbymonthevenif0【发布时间】:2020-09-1715:49:01【问题描述】:我正在尝试将过去12个月的约会按月分组,以便输出到图表中。以下工作正常,但如果每... 查看详情

如何在SQL中获取当前日期最近六个月的前一个月数据

】如何在SQL中获取当前日期最近六个月的前一个月数据【英文标题】:HowtoGetfirstonemonthdatafromlastsixmonthfromcurrentdateinSQL【发布时间】:2022-01-0312:11:58【问题描述】:我们如何修改以下脚本以获取过去6个月的第一个月数据?selectdate... 查看详情

面试题:如何在列级别获得最近3个月的聚合?

】面试题:如何在列级别获得最近3个月的聚合?【英文标题】:Interviewquestion:Howtogetlast3monthaggregationatcolumnlevel?【发布时间】:2019-08-0705:01:41【问题描述】:这是我在Apple现场采访中被问到的问题,让我大吃一惊。数据是这样的... 查看详情

如何使用月份名称获取最近 3 个月的计数,如果该月份没有记录需要使用月份名称获取 0 [重复]

】如何使用月份名称获取最近3个月的计数,如果该月份没有记录需要使用月份名称获取0[重复]【英文标题】:Howtogetthecountsoflast3monthswithmonthnames,ifnorecordforthatmonthneedtoget0withmonthname[duplicate]【发布时间】:2019-01-0107:10:33【问题描述... 查看详情

SQL 按客户分组的最近 15 个月的销售额

】SQL按客户分组的最近15个月的销售额【英文标题】:SQLlast15monthsofsalesgroupedbycustomer【发布时间】:2019-03-0503:06:20【问题描述】:我想在sql中输出一个包含每个客户每月销售额的表。每列应对应另一个月份。第一列应该是当前月... 查看详情