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

MySQL最近12个月的月度销售,包括无月销售

苏鹏鹍
2023-03-14
问题内容
SELECT DATE_FORMAT(date, "%b") AS month, SUM(total_price) as total
FROM cart
WHERE date <= NOW()
and date >= Date_add(Now(),interval - 12 month)
GROUP BY DATE_FORMAT(date, "%m-%Y")

该查询仅显示现有月份的结果。我需要所有12个月的销售。

输出

"month" "total"  
--------------  
"Jun"   "22"
"Aug"   "30"
"Oct"   "19"
"Nov"   "123"
"Dec"   "410"

所需输出

"month" "total"  
--------------
"Jan"   "0"
"Feb"   "0"
"Mar"   "0"
"Apr"   "0"
"May"   "0"
"Jun"   "22"
"Jul"   "0"
"Aug"   "30"
"Sep"   "0"
"Oct"   "19"
"Nov"   "123"
"Dec"   "410"

问题答案:

感谢@pankaj提示,在这里我通过此查询解决了…

SELECT 
    SUM(IF(month = 'Jan', total, 0)) AS 'Jan',
    SUM(IF(month = 'Feb', total, 0)) AS 'Feb',
    SUM(IF(month = 'Mar', total, 0)) AS 'Mar',
    SUM(IF(month = 'Apr', total, 0)) AS 'Apr',
    SUM(IF(month = 'May', total, 0)) AS 'May',
    SUM(IF(month = 'Jun', total, 0)) AS 'Jun',
    SUM(IF(month = 'Jul', total, 0)) AS 'Jul',
    SUM(IF(month = 'Aug', total, 0)) AS 'Aug',
    SUM(IF(month = 'Sep', total, 0)) AS 'Sep',
    SUM(IF(month = 'Oct', total, 0)) AS 'Oct',
    SUM(IF(month = 'Nov', total, 0)) AS 'Nov',
    SUM(IF(month = 'Dec', total, 0)) AS 'Dec',
    SUM(total) AS total_yearly
    FROM (
SELECT DATE_FORMAT(date, "%b") AS month, SUM(total_price) as total
FROM cart
WHERE date <= NOW() and date >= Date_add(Now(),interval - 12 month)
GROUP BY DATE_FORMAT(date, "%m-%Y")) as sub


 类似资料:
  • 问题内容: 我正在尝试计算一个月内某个产品的总销售额,但是我希望它包括所有“空”月(无销售),并且只选择最近的12个月。 到目前为止,这是我的代码。 这返回 但我希望它能回来。 我正在使用SQL Server 2008 R2 Sp1 问题答案: 在知道您有日历表之前,我已经做完了。我已经习惯了连续十二个月(包括当前)。

  • 问题内容: 问候大家。我有一个SQL 2008 Express数据库,名称为tbl_Merchant,如下所示: 我需要找到在过去12个月内每月销售量排名前10位的商家。 如果只有一个月,这是非常容易的。 但是,如果我想在12个月内找到它们,我就会陷入困境。我需要显示120个商人,这是每个月的前10名销售商人。目前,我的解决方案是将第1个月到第12个月的12个表合并在一起,但是我认为这不是一个好方

  • 问题内容: 您好,我正在使用此sql查询来获取基于月份的图表表示形式的最近12个月的记录: 但是,如果一个月没有任何记录,则它不会按预期包含在结果集中,并且我正在使用php进行大量计算以完成所需的操作。 我的问题是:是否有一种方法可以检索一个简单的结果集,其中包含过去12个月每个月的驱动器总数,并且如果一个月中有0个驱动器,则还必须将其包含在结果集中显示。 问题答案: 您需要使用一个表进行外部联接

  • WooCommerce的shortcode best_selling_products能显示产品销量排行,但这个排行是网站上线以来的总销量的排行,如果想显示最近一个月销量排行该怎么办呢? WooCommerce如何记录销量 WooCommerce的销量记录在wp_postmeta表中,如下图所示,每次卖出产品就更新一下这个产品的的meta值,并没有记录销售时间。 用代码实现最近一个月销量排行 利用

  • 问题内容: 我有一个“月度状态”数据库视图,我需要根据此视图生成报告。视图中的数据如下所示: …等等 该视图具有产品类别,收入,一年零一个月。我想创建一个比较2007年和2008年的报告,在没有销售的月份中显示0。因此,报告应如下所示: 要注意的关键是,第1个月在2008年仅有销售,因此2007年为0。此外,第4个月在2008年没有销售,因此0则在2007年有销售并且仍然显示。 另外,该报告实际上

  • 蓝月亮算是本土快消里面比较大的厂子了吧,因为没有过什么快消实习经历,所以也没投产品策划等市场的岗位,就投了这个销售运营当试试水。一面是群面,用的腾讯会议,一场有10个人。我那场所有人都到齐了,有些场次没有全部到那么被选中的概率可能也会稍微大一点点。 人到齐之后直接就开始面试啦,不用做自我介绍,不过我看其他的场次好像也有的要做自我介绍,可能看面试官?总体来说流程大差不差。流程:5mins读题+25m