MySQL高阶1951-查询具有最多共同关注者的所有两两结成对

news2024/9/27 12:07:24

目录

题目

准备数据

分析数据

实现


题目

写出一个查询语句,找到具有最多共同关注者的所有两两结对组。换句话说,如果有两个用户的共同关注者是最大的,我们应该返回所有具有此最大值的两两结对组

结果返回表,每一行应该包含user1_id和 user2_id,其中user1_id < user2_id.

返回结果 不要求顺序 。

准备数据

Create table If Not Exists Relations (user_id int, follower_id int)
    Truncate table Relations
    insert into Relations (user_id, follower_id) values ('1', '3')
    insert into Relations (user_id, follower_id) values ('2', '3')
    insert into Relations (user_id, follower_id) values ('7', '3')
    insert into Relations (user_id, follower_id) values ('1', '4')
    insert into Relations (user_id, follower_id) values ('2', '4')
    insert into Relations (user_id, follower_id) values ('7', '4')
    insert into Relations (user_id, follower_id) values ('1', '5')
    insert into Relations (user_id, follower_id) values ('2', '6')
    insert into Relations (user_id, follower_id) values ('7', '5')

分析数据

第一步:根据共同好友进行关联条件,并且确保a.user_id < b.user_id

select a.user_id as user1_id, b.user_id as user2_id, a.follower_id from Relations a
        join Relations b on a.follower_id = b.follower_id and a.user_id<b.user_id;

第二步:对共同好友统计个数


select user1_id, user2_id, count(*) as cnt from
    (
        select a.user_id as user1_id, b.user_id as user2_id, a.follower_id from Relations a
                                                                                    join Relations b on a.follower_id = b.follower_id and a.user_id<b.user_id
    ) as temp
group by user1_id, user2_id;

第三步:筛选出具有这个最大值的用户对

with temp as
(
    select user1_id, user2_id, count(*) as cnt from
    (
        select a.user_id as user1_id, b.user_id as user2_id, a.follower_id from Relations a
        join Relations b on a.follower_id = b.follower_id and a.user_id<b.user_id
    ) as temp
    group by user1_id, user2_id
)

select user1_id, user2_id from temp
where cnt = (select max(cnt) from temp);

实现

with temp as
(
    select user1_id, user2_id, count(*) as cnt from
    (
        select a.user_id as user1_id, b.user_id as user2_id, a.follower_id from Relations a
        join Relations b on a.follower_id = b.follower_id and a.user_id<b.user_id
    ) as temp
    group by user1_id, user2_id
)

select user1_id, user2_id from temp
where cnt = (select max(cnt) from temp);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2165207.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

1.1.4 计算机网络的分类

按分布范围分类&#xff1a; 广域网&#xff08;wan&#xff09; 城域网&#xff08;man&#xff09; 局域网&#xff08;lan&#xff09; 个域网&#xff08;pan&#xff09; 注意&#xff1a;如今局域网几乎采用“以太网技术实现”&#xff0c;因此“以太网”几乎成了“局域…

WebGL入门(一)绘制一个点

源码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><scr…

硬件设计-噪声的学习

目录 LDO 噪声和 PSRR ​编辑 噪声类型 数据表中的噪声规格 哪种规格适合您的应用 如何降低 LDO 噪声&#xff1f; LDO 噪声的影响 LDO 噪声和 PSRR 低压差线性稳压器 (LDO) 为调节由较高电压输入产生的输出电压提供了一种简单方法。虽然操作简单&#xff0c;但其自生噪…

codeforces round973 div2

A zhans blender 问题&#xff1a; 思路&#xff1a; 模拟 代码&#xff1a; #include <bits/stdc.h> using namespace std;typedef long long ll;void solve() {int n, x, y;cin >> n >> x >> y;cout << (n min(x, y) - 1) / min(x, y) &…

第164天:应急响应-挖矿脚本检测指南_威胁情报_样本定性_文件清除_入口修复

目录 案例一&#xff1a;挖矿样本-Win&Linux-危害&定性 案例二&#xff1a;Linux-Web安全漏洞导致挖矿事件 案例三&#xff1a; Windows-系统口令爆破导致挖矿事件 案例一&#xff1a;挖矿样本-Win&Linux-危害&定性 windows样本 非常明显的特征就是cpu的占…

一定要收藏的4款AI论文大纲写作方法!说不定就用上了~

在当今学术研究和写作领域&#xff0c;AI论文写作工具的出现极大地提高了写作效率和质量。这些工具不仅能够帮助研究人员快速生成论文草稿&#xff0c;还能进行内容优化、查重和排版等操作。本文将推荐四款优秀的AI论文大纲写作方法&#xff0c;并特别推荐千笔-AIPassPaper&…

拼图缺口形状检测系统源码分享

拼图缺口形状检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer…

车间调度 | 利用遗传算法(GA)求解混合流水车间调度问题(Hybrid flow-shop scheduling problem, HFSP)

车间调度 | 利用遗传算法(GA)求解混合流水车间调度问题(Hybrid flow-shop scheduling problem, HFSP) 目录 车间调度 | 利用遗传算法(GA)求解混合流水车间调度问题(Hybrid flow-shop scheduling problem, HFSP)效果一览基本介绍程序设计参考资料 效果一览 基本介绍 利用遗传算…

11-pg内核之锁管理器(六)死锁检测

概念 每个事务都在等待集合中的另一事务&#xff0c;由于这个集合是一个有限集合&#xff0c;因此一旦在这个等待的链条上产生了环&#xff0c;就会产生死锁。自旋锁和轻量锁属于系统锁&#xff0c;他们目前没有死锁检测机制&#xff0c;只能靠内核开发人员在开发过程中谨慎的…

【测试项目】——个人博客系统自动化测试

&#x1f4d6; 前言&#xff1a;本文针对个人博客项目进行测试&#xff0c;个人博客主要由四个页面构成&#xff1a;登录页、列表页、详情页和编辑页&#xff0c;主要功能包括&#xff1a;登录、编辑并发布博客、查看详情、删除博客以及注销等功能。对于个人博客的测试就是针对…

JavaScript的注释与常见输出方式

注释 源码中注释是不被引擎所解释的&#xff0c;它的作用是对代码进行解释。Javascript 提供两种注释的写法:一种是单行注释&#xff0c;用//起头;另一种是多行注释&#xff0c;放在/*和*/之间。 单行注释&#xff1a; //这是单行注释 多行注释&#xff1a; /*这是 多行 注…

享元模式详解:内存优化的利器

享元模式&#xff08;Flyweight Pattern&#xff09;是一种结构型设计模式&#xff0c;它通过共享相同对象来减少内存消耗&#xff0c;从而提高系统性能。享元模式适用于大量细粒度对象的场景&#xff0c;这些对象具有相同或相似的状态。 一&#xff0c;享元模式的结构 享元模…

NXP i.MX8系列平台开发讲解 - 4.1.5 GNSS篇(五) - GPSD 编译(包含交叉编译)详解

专栏文章目录传送门&#xff1a;返回专栏目录 Hi, 我是你们的老朋友&#xff0c;主要专注于嵌入式软件开发&#xff0c;有兴趣不要忘记点击关注【码思途远】 文章目录 目录 1. 编译GPSD[Ubuntu] 2. 交叉编译 2.1 解决依赖库编译 2.1.1 libusb 编译 2.1.2 libncurses 编译…

Redis的一些通用指令

首先我们需要先连接客户端服务器&#xff0c;此时我们需要通过redis-cli和redis服务器进行交互&#xff0c;输入ping来确保通路的流畅 &#xff08;一&#xff09;get和set redis中最核心的两个命令就是get和set&#xff0c;get就是根据key来取出对应value&#xff0c;set就是把…

2024年汉字小达人区级自由报名比赛的真实流程图解——和往年比有一个重大变化

今天是2024年9月25日&#xff0c;上海小学生&#xff08;和家长&#xff09;们最关注的赛事之一——美丽汉字中文自修杯第十一届上海市小学生汉字小达人区级自由报名区级比赛正式开始了&#xff01; 虽然今天才是比赛的第一天&#xff0c;但是很多孩子已经摩拳擦掌开始展示自己…

信息安全工程师(18)常见密码算法

前言 常见的密码算法主要分为三大类&#xff1a;对称加密算法、非对称加密算法和摘要算法。 一、对称加密算法 对称加密算法&#xff0c;又称为秘密密钥算法或单密钥算法&#xff0c;是指加密和解密使用相同密钥的加密方式。这种算法的特点是加密速度快&#xff0c;适用于大量数…

【延时队列的实现方式】

文章目录 延时队列JDK自带的延时队列实现Redis实现延迟队列RabbitMQ 延时队列 延时队列 延时队列是一种特殊类型的队列&#xff0c;它允许元素在特定时间间隔后才能被处理。这种队列在处理具有延迟需求的任务时非常有用&#xff0c;例如定时任务、事件驱动系统等 延时队列在项…

Cannon-es.js编程进阶:复杂形状的碰撞

本文目录 前言最终复杂模型碰撞效果1、碰撞事件及休眠事件1.1 前文回顾及代码整改1.2 效果1.3 监听碰撞事件与休眠1.3.1 碰撞事件collide1.3.2 休眠事件sleepy及sleep2、多个形状的组合物体碰撞2.1 效果3、Trimesh3.1 代码3.2 效果前言 我们在Cannon-es.js基础入门:3D 物理碰撞…

新闻媒体宣发套餐扩大影响力和建立品牌形象方法-华媒舍

在当今互联网时代&#xff0c;营销推广是任何企业必须要面对的挑战。而在众多的营销方式中&#xff0c;精准投放和新闻媒体宣发套餐推广成为了越来越受欢迎的选择。本文将从精准投放和新闻媒体宣发套餐推广两个方面进行科普介绍&#xff0c;解析其背后的重要意义和带来的百倍回…

微软宣布弃用WSUS,企业用户尽早准备替换方案

微软最近宣布将逐步弃用Windows Server Update Services (WSUS)&#xff0c;不再为其开发新功能&#xff0c;但会继续支持现有的更新和功能。这一决定对企业客户来说影响深远&#xff0c;尤其是那些依赖WSUS来管理大规模Windows设备更新的组织。 对企业客户的影响 安全性与合规…