1693-每天的领导和合伙人

每天的领导和合伙人

原文地址:1693. 每天的领导和合伙人 - 力扣(LeetCode)

  • 题目如下所示

个人题解

这题比较简单,主要得看清楚题意,根据date_idmake_name进行分组。个人思考过程如下所示

  • -- 1. 建表
    -- 该表包含日期、产品的名称,以及售给领导和合伙人的编号(名称只包含小写英文字母)
    CREATE TABLE 1693_DailySales(
    date_id DATE,
    make_name VARCHAR(20),
    lead_id INT,
    partner_id INT
    );
    -- 2. 编写 SQL 语句,使得对于每一个 date_id 和 make_name,返回 不同的 lead_id 以及不同的 partner_id 的数量
    -- 很明显,题目已经给我们说明要我们作分组,且分两列
    -- 我们下面使用 GROUP_CONCAT(expr) 函数分析一下中间的具体分组过程
    SELECT
    ds.date_id,
    ds.make_name,
    GROUP_CONCAT(ds.date_id),
    GROUP_CONCAT(ds.make_name),
    GROUP_CONCAT(ds.lead_id),
    GROUP_CONCAT(ds.partner_id)
    FROM 1693_DailySales ds GROUP BY ds.date_id, ds.make_name;
    -- 很显然,分两列的情况下会将 date_id,make_name 完全相同的行合并
    -- 因此题目想要查询 不同的 lead_id 以及不同的 partner_id 的数量 ,那就很简单了
    SELECT
    ds.date_id,
    ds.make_name,
    COUNT(DISTINCT ds.lead_id) unique_leads,
    COUNT(DISTINCT ds.partner_id) unique_partners
    FROM 1693_DailySales ds GROUP BY ds.date_id, ds.make_name;
posted @   OnlyOnYourself-Lzw  阅读(13)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2022-07-11 05-Nacos注册中心
2022-07-11 04-Ribbon负载均衡
2022-07-11 03-Eureka注册中心
2022-07-11 02-服务拆分和远程调用
2022-07-11 01-微服务的概念
点击右上角即可分享
微信分享提示