1149. 文章浏览 II - 力扣(LeetCode)

  1. 1149. 文章浏览 II - 力扣(LeetCode)

  2. 目标

    1. 输入

      表: Views
      article_idauthor_idviewer_idview_date
      1352019/8/1
      3452019/8/1
      1362019/8/2
      2772019/8/1
      2762019/8/2
      4712019/7/22
      3442019/7/21
      3442019/7/21
    2. 输出

      输出
      ID
      5
      6
  3. 分析

    编写解决方案来找出在同一天阅读至少两篇文章的人。

    结果按照 id 升序排序。
    表: Views输出
    article_idauthor_idviewer_idview_dateID
    1352019/8/15
    3452019/8/16
    1362019/8/2
    2772019/8/1
    2762019/8/2
    4712019/7/22
    3442019/7/21
    3442019/7/21
    分组聚合ID
    5
    6
  4. 实现

    Create table If Not Exists Views (article_id int, author_id int, viewer_id int, view_date date);
    Truncate table Views;
    insert into Views (article_id, author_id, viewer_id, view_date) values ('1', '3', '5', '2019-08-01');
    insert into Views (article_id, author_id, viewer_id, view_date) values ('3', '4', '5', '2019-08-01');
    insert into Views (article_id, author_id, viewer_id, view_date) values ('1', '3', '6', '2019-08-02');
    insert into Views (article_id, author_id, viewer_id, view_date) values ('2', '7', '7', '2019-08-01');
    insert into Views (article_id, author_id, viewer_id, view_date) values ('2', '7', '6', '2019-08-02');
    insert into Views (article_id, author_id, viewer_id, view_date) values ('4', '7', '1', '2019-07-22');
    insert into Views (article_id, author_id, viewer_id, view_date) values ('3', '4', '4', '2019-07-21');
    insert into Views (article_id, author_id, viewer_id, view_date) values ('3', '4', '4', '2019-07-21');
    SELECT * FROM Views;
    SELECT DISTINCT viewer_id ID FROM Views
    GROUP BY view_date,viewer_id
    HAVING COUNT(DISTINCT article_id)>=2
    ORDER BY viewer_id

  5. 小结

        分组聚合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值