首页 > 其他分享 >按日期分组销售产品

按日期分组销售产品

时间:2023-07-26 18:44:07浏览次数:22  
标签:sell product 06 products 销售 日期 2020 date 分组

表 Activities:

+-------------+---------+
| 列名         | 类型    |
+-------------+---------+
| sell_date   | date    |
| product     | varchar |
+-------------+---------+
这个表可能包含重复数据(换句话说,在 SQL 中,这个表没有主键)。
此表的每一行都包含产品名称和在市场上销售的日期。
 

查询每个日期、销售的不同产品的数量及其名称。
每个日期的销售产品名称应按词典序排列。
返回按 sell_date 排序的结果表。
查询结果格式如下例所示。

 

示例 1:

输入:
Activities 表:
+------------+-------------+
| sell_date  | product     |
+------------+-------------+
| 2020-05-30 | Headphone   |
| 2020-06-01 | Pencil      |
| 2020-06-02 | Mask        |
| 2020-05-30 | Basketball  |
| 2020-06-01 | Bible       |
| 2020-06-02 | Mask        |
| 2020-05-30 | T-Shirt     |
+------------+-------------+
输出:
+------------+----------+------------------------------+
| sell_date  | num_sold | products                     |
+------------+----------+------------------------------+
| 2020-05-30 | 3        | Basketball,Headphone,T-shirt |
| 2020-06-01 | 2        | Bible,Pencil                 |
| 2020-06-02 | 1        | Mask                         |
+------------+----------+------------------------------+
解释:
对于2020-05-30,出售的物品是 (Headphone, Basketball, T-shirt),按词典序排列,并用逗号 ',' 分隔。
对于2020-06-01,出售的物品是 (Pencil, Bible),按词典序排列,并用逗号分隔。
对于2020-06-02,出售的物品是 (Mask),只需返回该物品名。

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/group-sold-products-by-the-date
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
#屎山sql,运行慢得一逼,但是重复运行又快了?毫无头绪#
1.首先第一步应该想到按分组查询,使用count函数
select sell_date,count(product) num_sold , products 
from Activities 
group by sell_date  
2.看到products字段并没有合并,使用分组拼接group_cancat函数
select sell_date,count(product) num_sold ,GROUP_CONCAT(product) products                
from Activities 
group by sell_date  
3.看到有重复统计和显示的情况,使用去重关键字DISTINCT
select sell_date,count(DISTINCT product) num_sold ,GROUP_CONCAT(DISTINCT product) products                
from Activities 
group by sell_date

 

标签:sell,product,06,products,销售,日期,2020,date,分组
From: https://www.cnblogs.com/xiaochaofang/p/17583304.html

相关文章

  • [Java] Stream流求和、排序、分组
    List、Set集合通过Stream流求和一、泛型为Integer、Long、Double、BigDecimal求和Integersum=scores.stream().reduce(Integer::sum).orElse(0);Longsum=scores.stream().reduce(Long::sum).orElse(0L);Doublesum=scores.stream().reduce(Double::sum).orElse(0.00)......
  • 让谷歌实现和edge一样的侧边栏效果--标签分组,侧边tab----acid-tabs
    背景知识+插件推荐----acid-tabsChrome/Edge标签组插件对比https://zhuanlan.zhihu.com/p/464427242edge侧边栏截图百度一下,edge侧边栏很容易实现谷歌这方面,据说是到谷歌114版本后,开始支持侧边栏需要一个插件来强化一下https://www.163.com/dy/article/HER3BD74051196HN......
  • MySQL group by分组后,将每组所得到的id拼接起来
    背景需要将商品表中的sku按照spu_id分组后,并且得到每个spu下的sku_id,需要使用到group_concat函数selectspu_id,count(*),group_concat(idSEPARATOR',')asidsfromproduct_skuwherecategory='tv'groupbyspu_id;group_concat函数group_concat函数,实现分组查......
  • Tableau 分组排序,并显示前几名()
    待更新1、index+rank 2、LOD表达式+ PERCENTILE()①各个子类别下95%以下的数据,对这部分数据进行统计计算: [销售额]<=  {FIXED[子类别]:PERCENTILE([销售额],0.95)} ②在别处查到的,暂时不知道怎么用,先记录在此:......
  • 获取当前日期所周、月、季第一天和最后一天
    //获取本周一天和最后一天,周一为第一天//DateTimenow=DateTime.Now;//输入日期//inttoday=(int)now.DayOfWeek;//Console.WriteLine("本周开始日期{0:d},结束日期{1:d}",now.AddDays(-today+1),now.AddDays(7-today));//Console.WriteLine("上周开始日期{0:d},结束日期{......
  • 销售需求丨多列判定筛选(三)
    哈喽,小伙伴们,大家好啊~本期呢,咱们来继续研究多列判定筛选。可能有的小伙伴说了,咦?这个话题不是之前已经说过两期了么?怎么这次还继续呢?严格来说,这个话题虽然说了两期了,但是还没结束,因为延伸出来的东西比较多。话不多说,数据图如下:依然采用之前的案例数据。需求还是一如既往:根据每个人......
  • element-ui 周、月、季、年的日期时间选择器
    日常做项目中经常会遇到根据周、月、季度、年的日期时间选择器,切换不同的时间时选择器也做出相对应的变化,并且获取相对的开始时间和结束时间。效果如下:  1.先创建子组件--季度的日期选择器 1<template>2<divclass="time_quarter">3<markstyle="posi......
  • 怎样优雅地增删查改(九):按日期范围查询
    目录实现按开始日期查询按结束日期查询使用项目地址 使用数据库的创建时间作为查询依据,在Abp框架中,实体类实现ICreationAuditedObject接口,或继承CreationAuditedEntity类,使用仓储创建记录时将自动生成CreationTime。实现定义按创建日期范围查询(IDateSpanOriente......
  • JSON化------日期类型转JSON后变为时间戳
    我们在进行对象JSON化的时候(其中包含一些日期类型字段)日期类型在进行JSON的时候会转换为时间戳解决JSON.parse(JSONObject.toJSONStringWithDateFormat(要json的值,"yyyy-MM-ddHH:mm:ss")).toString(); ......
  • sql server 查询本月日期
    SQLServer查询本月日期在SQLServer中,要查询本月的日期,可以通过以下步骤实现:步骤描述1获取当前日期2提取当前年份3提取当前月份4构建查询条件5执行查询1.获取当前日期首先,我们需要获取当前日期。可以使用GETDATE()函数来获取当前日期和时间。......