首页 > 其他分享 >1126. 查询活跃业务

1126. 查询活跃业务

时间:2024-10-21 20:48:26浏览次数:3  
标签:business 1126 event 活跃 Events occurrences 查询 type id

力扣题目跳转(1126. 查询活跃业务 - 力扣(LeetCode)

事件表:Events

+---------------+---------+
| Column Name   | Type    |
+---------------+---------+
| business_id   | int     |
| event_type    | varchar |
| occurrences   | int     | 
+---------------+---------+
(business_id, event_type) 是这个表的主键(具有唯一值的列的组合)。
表中的每一行记录了某种类型的事件在某些业务中多次发生的信息。

 题目要求:

平均活动 是指有特定 event_type 的具有该事件的所有公司的 occurrences 的均值。

活跃业务 是指具有 多个 event_type 的业务,它们的 occurrences 严格大于 该事件的平均活动次数。

写一个解决方案,找到所有 活跃业务

以 任意顺序 返回结果表。

结果格式如下所示。

示例 1:

输入:
Events table:
+-------------+------------+-------------+
| business_id | event_type | occurrences |
+-------------+------------+-------------+
| 1           | reviews    | 7           |
| 3           | reviews    | 3           |
| 1           | ads        | 11          |
| 2           | ads        | 7           |
| 3           | ads        | 6           |
| 1           | page views | 3           |
| 2           | page views | 12          |
+-------------+------------+-------------+
输出:
+-------------+
| business_id |
+-------------+
| 1           |
+-------------+ 
解释:
每次活动的平均活动可计算如下:
- 'reviews': (7+3)/2 = 5
- 'ads': (11+7+6)/3 = 8
- 'page views': (3+12)/2 = 7.5
id=1 的业务有 7 个 'reviews' 事件(多于 5 个)和 11 个 'ads' 事件(多于 8 个),所以它是一个活跃的业务。

case 1 的建表语句。

Create table If Not Exists Events (business_id int, event_type varchar(10), occurrences int)

Truncate table Events

insert into Events (business_id, event_type, occurrences) values ('1', 'reviews', '7')

insert into Events (business_id, event_type, occurrences) values ('3', 'reviews', '3')

insert into Events (business_id, event_type, occurrences) values ('1', 'ads', '11')

insert into Events (business_id, event_type, occurrences) values ('2', 'ads', '7')

insert into Events (business_id, event_type, occurrences) values ('3', 'ads', '6')

insert into Events (business_id, event_type, occurrences) values ('1', 'page views', '3')

insert into Events (business_id, event_type, occurrences) values ('2', 'page views', '12')

一     我们增加一列作为每种 event_type 的平均值。

select
    *,
    avg(occurrences) over(partition by event_type) as cnt
from Events;

输出如下

二    在上面基础上我们按照 business_id 进行分组,删选条件为 event_type 大于平均值的,然后统计每组内的个数,大于 2 则为我们的答案。

with tmp as
(select
    *,
    avg(occurrences) over(partition by event_type) as cnt
from Events)
select
    business_id
from tmp
where occurrences > cnt
group by business_id
having count(*) >= 2;

输出如下

以上就是全部答案,如果对你有帮助请点个赞,谢谢。

来源:力扣(leecode

著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

 转载请注明出处:

1126. 查询活跃业务-CSDN博客id=1 的业务有 7 个 'reviews' 事件(多于 5 个)和 11 个 'ads' 事件(多于 8 个),所以它是一个活跃的业务。(business_id, event_type) 是这个表的主键(具有唯一值的列的组合)。我会尽快把力扣上的所有数据库题目发出来。商业转载请联系官方授权,非商业转载请注明出处。表中的每一行记录了某种类型的事件在某些业务中多次发生的信息。的具有该事件的所有公司的。该事件的平均活动次数。https://blog.csdn.net/CYJ1844/article/details/143129195

我会尽快把力扣上的所有数据库题目发出来。感兴趣的可以点个赞与关注。每天不定时跟新。

标签:business,1126,event,活跃,Events,occurrences,查询,type,id
From: https://blog.csdn.net/CYJ1844/article/details/143129195

相关文章

  • Mongodb(4)索引,查看执行计划,聚合操作aggregate,表关联查询,批量插入测试数据,执行计
    创建索引,支持:单键索引、复合索引,唯一索引创建索引后台执行db.books.createIndex({open:1,close:1},{background:true})对内嵌文档字段创建索引:db.books.createIndex({"author.name":1})创建唯一索引db.books.createIndex({title:1},{unique:true})在包含嵌套对象的......
  • 17track物流查询平台 last-event-id 参数逆向分析
    声明本文章中所有内容仅供学习交流使用,不用于其他任何目的,不提供完整代码,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!本文章未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术而导致的任何意外,作......
  • 数据库—多表查询、事务
    1.多表查询:例:点击查看代码#创建部门表CREATETABLEdept(didINTPRIMARYKEYAUTO_INCREMENT,dnameVARCHAR(20));#创建员工表CREATETABLEemp(idINTPRIMARYKEYAUTO_INCREMENT,NAMEVARCHAR(10),genderCHAR(1),--性别salaryDOUBLE,--工资join_date......
  • mongodb 查询条件,查询逻辑对照表,逻辑运算符,正则表达式匹配查询,排序,分页/巧分页,更新操
    mongodb查询条件,查询逻辑对照表,逻辑运算符,正则表达式匹配查询,排序,分页/巧分页,更新操作符,更新单个/多个文档,删除文档,批量插入,$type操作符,内嵌文档和数组查找修改1.条件查询SQLMQLa=1{a:1}a<>1{a:{$ne:1}}a>1{a:{$gt:1}}a>=1{a:{$gte:1}}a<1{a:{$lt......
  • 大模型如何提升电商平台的用户粘性与活跃度
    引言在互联网飞速发展的今天,电子商务平台已经成为人们日常生活的重要组成部分。然而,如何在激烈的竞争中脱颖而出,提升平台的用户粘性与活跃度,成为各大电商平台亟待解决的关键问题。用户粘性与活跃度是电商平台生存发展的基石,直接关系到平台的盈利能力和市场竞争力。用户粘性......
  • 数据库系统-06-SQL查询语句4
    一、AggregateFunctions(聚集函数)1.定义:聚合函数接受一组(集合或多重集合)值作为输入,并返回单个值。2.种类函数功能count统计数量max最大值min最小值avg平均值sum求和二、基本的聚合1.语法:select 聚合函数(字段列表)from 表名;例1:找出计算......
  • 数据库系统-07-SQL查询语句5-嵌套子查询
    一、嵌套子查询1.概念:子查询是嵌套在另一个查询中的select-from-where表达式。子查询通常被用来对集合成员资格、集合的比较以及集合的基数进行检查2.集合的成员资格(1)概念:SQL允许测试元组在关系中的成员资格。连接词in测试元组是否是集合中的成员,集合是由select子句产生的......
  • 基于node.js+vue基于Android的星座运势查询系统(开题+程序+论文)计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容一、选题背景关于星座运势查询系统的研究,现有研究主要以网页形式为主,专门针对基于Android平台开发星座运势查询系统的研究较少。在国内外,星座文化都有一定的受众群体......
  • 【MySQL】子查询,合并查询
    目录1.子查询1.1.单行子查询1.2.多行子查询1.3.多列子查询 1.4.在from子句里面使用子查询 2.合并查询 1.子查询         子查询,也称为嵌套查询或子选择,是SELECT嵌入在另一个SQL查询的 WHERE 或 HAVING子句中的查询。子查询返回的数据由外部语句使用......
  • ShardingJdbc分库分表+连表查询(超简单)
    下载依赖这边建议所有的依赖版本都和我同步,因为我被版本冲突折磨了好久...<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.2.1.RELEASE</version>......