Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >「SQL面试题库」 No_63 报告的记录 II

「SQL面试题库」 No_63 报告的记录 II

作者头像
不吃西红柿
发布于 2023-05-23 08:57:28
发布于 2023-05-23 08:57:28
22500
代码可运行
举报
文章被收录于专栏:信息技术智库信息技术智库
运行总次数:0
代码可运行

🍅 1、今日真题

题目介绍: 报告的记录 II reported-posts-ii

难度中等

SQL架构

动作表:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Actions
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
+---------------+---------+
| Column Name   | Type    |
+---------------+---------+
| user_id       | int     |
| post_id       | int     |
| action_date   | date    |
| action        | enum    |
| extra         | varchar |
+---------------+---------+
这张表没有主键,并有可能存在重复的行。
action 列的类型是 ENUM,可能的值为 ('view', 'like', 'reaction', 'comment', 'report', 'share')。
extra 列拥有一些可选信息,例如:报告理由(a reason for report)或反应类型(a type of reaction)等。

移除表:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Removals
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
+---------------+---------+
| Column Name   | Type    |
+---------------+---------+
| post_id       | int     |
| remove_date   | date    | 
+---------------+---------+
这张表的主键是 post_id。
这张表的每一行表示一个被移除的帖子,原因可能是由于被举报或被管理员审查。

编写一段 SQL 来查找:在被报告为垃圾广告的帖子中,被移除的帖子的每日平均占比,四舍五入到小数点后 2 位

查询结果的格式如下:

``` Actions table: +---------+---------+-------------+--------+--------+ | user_id | post_id | action_date | action | extra | +---------+---------+-------------+--------+--------+ | 1 | 1 | 2019-07-01 | view | null | | 1 | 1 | 2019-07-01 | like | null | | 1 | 1 | 2019-07-01 | share | null | | 2 | 2 | 2019-07-04 | view | null | | 2 | 2 | 2019-07-04 | report | spam | | 3 | 4 | 2019-07-04 | view | null | | 3 | 4 | 2019-07-04 | report | spam | | 4 | 3 | 2019-07-02 | view | null | | 4 | 3 | 2019-07-02 | report | spam | | 5 | 2 | 2019-07-03 | view | null | | 5 | 2 | 2019-07-03 | report | racism | | 5 | 5 | 2019-07-03 | view | null | | 5 | 5 | 2019-07-03 | report | racism | +---------+---------+-------------+--------+--------+

Removals table: +---------+-------------+ | post_id | remove_date | +---------+-------------+ | 2 | 2019-07-20 | | 3 | 2019-07-18 | +---------+-------------+

Result table: +-----------------------+ | average_daily_percent | +-----------------------+ | 75.00 | +-----------------------+ 2019-07-04 的垃圾广告移除率是 50%,因为有两张帖子被报告为垃圾广告,但只有一个得到移除。 2019-07-02 的垃圾广告移除率是 100%,因为有一张帖子被举报为垃圾广告并得到移除。 其余几天没有收到垃圾广告的举报,因此平均值为:(50 + 100) / 2 = 75% 注意,输出仅需要一个平均值即可,我们并不关注移除操作的日期。 ```

```sql SELECT ROUND(AVG(proportion) * 100, 2) AS average_daily_percent FROM ( SELECT actions.action_date, COUNT(DISTINCT removals.post_id)/COUNT(DISTINCT actions.post_id) AS proportion FROM actions LEFT JOIN removals ON actions.post_id = removals.post_id WHERE extra = 'spam' GROUP BY actions.action_date ) a

```

要理解spam的含义

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-05-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
LeetCode MySQL 1132. 报告的记录 II
编写一段 SQL 来查找:在被报告为垃圾广告的帖子中,被移除的帖子的每日平均占比,四舍五入到小数点后 2 位。
Michael阿明
2021/02/19
3850
【每日SQL打卡】​​​​​​​​​​​​​​​DAY 16丨报告的记录 II【难度中等】
编写一段 SQL 来查找:在被报告为垃圾广告的帖子中,被移除的帖子的每日平均占比,四舍五入到小数点后 2 位。
不吃西红柿
2022/07/29
1780
LeetCode MySQL 1113. 报告的记录
此表没有主键,所以可能会有重复的行。 action 字段是 ENUM 类型的,包含:('view', 'like', 'reaction', 'comment', 'report', 'share') extra 字段是可选的信息(可能为 null), 其中的信息例如有:1.报告理由(a reason for report) 2.反应类型(a type of reaction)
Michael阿明
2021/02/19
9650
【每日SQL打卡】​​​​​​​​​​​​​​​DAY 14丨报告的记录 I【难度简单】
编写一条SQL,查询每种 报告理由(report reason)在昨天的报告数量。假设今天是 2019-07-05。
不吃西红柿
2022/07/29
2750
LeetCode 数据库专题
写一段SQL查询来展示每位用户的 唯一标识码(unique ID );如果某位员工没有唯一标识码,使用 null 填充即可。你可以以 任意 顺序返回结果表。查询结果的格式如下例所示:
wywwzjj
2023/05/09
1.5K0
LeetCode 数据库专题
LeetCode数据库题目集合
编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:
MiChong
2021/02/24
1K0
LeetCode数据库题目集合
「SQL面试题库」 No_65 用户购买平台
写一段 SQL 来查找每天 仅 使用手机端用户、仅 使用桌面端用户和 同时 使用桌面端和手机端的用户人数和总支出金额。
不吃西红柿
2023/05/23
1.2K0
「SQL面试题库」 No_83 每个帖子的评论数
「SQL面试题库」是由 不是西红柿 发起,全员免费参与的SQL学习活动。我每天发布1道SQL面试真题,从简单到困难,涵盖所有SQL知识点,我敢保证只要做完这100道题,不仅能轻松搞定面试,代码能力和工作效率也会有明显提升。
不吃西红柿
2024/05/25
1430
「SQL面试题库」 No_69 文章浏览 II
编写一条 SQL 查询来找出在同一天阅读至少两篇文章的人,结果按照 id 升序排序。
不吃西红柿
2023/05/23
1790
「SQL面试题库」 No_82 报告系统状态的连续日期
题目介绍: 报告系统状态的连续日期 report-contiguous-dates
不吃西红柿
2023/10/16
2170
「SQL面试题库」 No_71 市场分析 II
写一个 SQL 查询确定每一个用户按日期顺序卖出的第二件商品的品牌是否是他们最喜爱的品牌。如果一个用户卖出少于两件商品,查询的结果是
不吃西红柿
2023/05/23
1720
「SQL面试题库」 No_59 小众书籍
「SQL面试题库」是由 不是西红柿 发起,全员免费参与的SQL学习活动。我每天发布1道SQL面试真题,从简单到困难,涵盖所有SQL知识点,我敢保证只要做完这100道题,不仅能轻松搞定面试,代码能力和工作效率也会有明显提升。
不吃西红柿
2023/05/09
1980
「SQL面试题库」 No_67 过去30天的用户活动 II
题目介绍: 过去30天的用户活动 II user-activity-for-the-past-30-days-ii
不吃西红柿
2023/05/23
3190
「SQL面试题库」 No_92 餐馆营业额变化增长
写一条 SQL 查询计算以 7 天(某日期 + 该日期前的 6 天)为一个时间段的顾客消费平均值
不吃西红柿
2023/10/16
1380
「SQL面试题库」 No_70 市场分析 I
请写出一条SQL语句以查询每个用户的注册日期和在 2019 年作为买家的订单总数。
不吃西红柿
2023/05/23
1820
「SQL面试题库」 No_17 游戏玩法分析 II
「SQL面试题库」是由 不是西红柿 发起,全员免费参与的SQL学习活动。我每天发布1道SQL面试真题,从简单到困难,涵盖所有SQL知识点,我敢保证只要做完这100道题,不仅能轻松搞定面试,代码能力和工作效率也会有明显提升。
不吃西红柿
2023/03/27
2850
「SQL面试题库」 No_58 游戏玩法分析 V
「SQL面试题库」是由 不是西红柿 发起,全员免费参与的SQL学习活动。我每天发布1道SQL面试真题,从简单到困难,涵盖所有SQL知识点,我敢保证只要做完这100道题,不仅能轻松搞定面试,代码能力和工作效率也会有明显提升。
不吃西红柿
2023/05/07
1860
「SQL面试题库」 No_89 不同国家的天气类型
题目介绍: 不同国家的天气类型 weather-type-in-each-country
不吃西红柿
2023/10/16
1500
「SQL面试题库」 No_74 即时食物配送 II
题目介绍: 即时食物配送 II immediate-food-delivery-ii
不吃西红柿
2023/05/23
2240
「SQL面试题库」 No_76 每月交易 I
编写一个 sql 查询来查找每个月和每个国家/地区的事务数及其总金额、已批准的事务数及其总金额。
不吃西红柿
2023/10/16
2250
推荐阅读
相关推荐
LeetCode MySQL 1132. 报告的记录 II
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验