首页 > 数据库 >力扣614(MySQL)-二级关注者(中等)

力扣614(MySQL)-二级关注者(中等)

时间:2023-04-04 22:12:41浏览次数:39  
标签:followee 614 力扣 follower 关注 LIMIT MySQL follow

题目:

在 facebook 中,表 follow 会有 2 个字段: followee, follower ,分别表示被关注者和关注者。

请写一个 sql 查询语句,对每一个关注者,查询关注他的关注者的数目。

比方说:

 应该输出:

 解释:

B 和 D 都在在 follower 字段中出现,作为被关注者,B 被 C 和 D 关注,D 被 E 关注。A 不在 follower 字段内,所以A不在输出列表中。

注意:

被关注者永远不会被他 / 她自己关注。
将结果按照字典序返回。

解题思路:

建表语句:

1 Create table If Not Exists follow_614 (followee varchar(255), follower varchar(255));
2 Truncate table follow_614;
3 insert into follow_614 (followee, follower) values ('A', 'B'),('B', 'C'),('B', 'D'),('D', 'E');

直白点理解题意就是筛选出在follower列中出现的字母在followee出现的次数。

①首先从表中通过where条件筛选出在followee在follower出现的数据;

 ②以followee为分组和排序,统计出followee和follower出现的次数。

1 select f.followee,count(distinct f.follower) as num
2 from follow_614 f
3 where f.followee in(
4 select follower 
5 from follow_614
6 )
7 group by f.followee
8 order by f.followee

 

小知识:

SQL的执行顺序:

FROM > ON > JOIN >WHERE > GROUP BY > HAVING >SELECT > UNION > ORDER BY > LIMIT

SQL的书写顺序:

SELECT > FROM > WHERE > JOIN > ON > GROUP BY > HAVING > UNION > ORDER BY > LIMIT

标签:followee,614,力扣,follower,关注,LIMIT,MySQL,follow
From: https://www.cnblogs.com/liu-myu/p/17287031.html

相关文章

  • mysql数据库安装
    参考连接1、超级详细的mysql数据库安装指南2、MySQL安装过程中,出现CheckRequirements缺少C++动态库即MicrosoftVisualC++2013Redistributable问题二、安装步骤(基本和第一个参考链接相同,下面是差异的地方)1、检查安装要求,不可以点击Next,点击Execute会出现错误。提示没有......
  • 【MySQL】MySQL基础03 — SQL学习 — DQL — 条件查询
    SQL学习—DQL—条件查询DQL语言学习数据查询语言(DataQueryLanguage),关键字select使用DQL前,先输入USE库名;2.条件查询语法:select`查询列表`from表名where筛选条件;分类:/*分类: 一、按条件表达式筛选 条件运算符:><=!=(<>)>=<= 二、按......
  • 【MySQL】MySQL基础 — SQL学习 — DQL — 基础查询
    SQL学习—DQL—基础查询DQL语言学习数据查询语言(DataQueryLanguage),关键字select使用DQL前,先输入USE库名;1.基础查询1.1查询字段#基础查询/*语法:select`查询列表`from表名;#`查询列表`,`着重号表明是字段,可加可不加,当关键字和字段名重叠,用`着重号区......
  • Qt6编译MySQL驱动最简单方法
    最近qt发布最新lts版本qt6.5,就想下来试试新功能。qt版本6.5.0,安装目录E:\Qt\6.5.0mysql版本8.0,安装目录C:\MySQL_Server_8.0,或者直接下连接器解压也可以:MySQL::DownloadMySQLConnector/C(ArchivedVersions)需要额外安装qt的sources源组件,忘了也没关系,在cmd下进入包含Main......
  • MYSQL-Explain详解
    --实际SQL,查找用户名为Jefabc的员工select*fromempwherename='Jefabc';--查看SQL是否使用索引,前面加上explain即可explainselect*fromempwherename='Jefabc';expain出来的信息有10列,分别是id、select_type、table、type、possible_keys、key、key_len、ref......
  • mysql5.7 启用SSL
    服务器端启动配置查看默认数据目录#ls-ldata/total122944-rw-r-----1mysqlmysql56Apr417:21auto.cnf-rw-------1mysqlmysql1676Apr417:21ca-key.pem-rw-r--r--1mysqlmysql1112Apr417:21ca.pem-rw-r--r--1mysqlmysql1......
  • MySQL笔记
    MySQL概述数据库相关概念名称全称简称数据库存储数据的仓库,数据是有组织的进行存储DataBase(DB)数据库管理系统操纵和管理数据库的大型软件DataBaseManagementSystem(DBMS)SQL操作关系型数据库的编程语言,定义了一套操作关系型数据库统一标准Structured......
  • Python MySQL UsingGuide
    1.MySQLInstall2.MySQLBasicalTestDemonstrationimportpymysql.cursorsimporttime#ConnecttothedatabaseT1=time.time()connection=pymysql.connect(host='localhost',user='root',......
  • mysql 常用命令
    CREATE#userCREATEUSER'jeffrey'@'localhost'PASSWORDEXPIREINTERVAL90DAY;#databaseCREATEDATABASEIFNOTEXISTSRUNOOBDEFAULTCHARSETutf8mb4COLLATEutf8mb4_general_ci;ALTERALTERUSER'jeffrey'@'localhost&#......
  • 从建模思路看 MySQL 和 TDengine 哪个更适合处理量化交易场景下的海量时序数据
    在“量化投资分析”场景中,系统需要从数据接口、网络上等各个地方获取证券的信息,其中往往以“实时的价格变动信息”为主要数据,然后再对这些数据进行实时的分析与存储,供盘中和盘后使用。某企业遇到的问题如下:“我们要对500个证券品种进行监控,在开盘时,每5秒会更新一次价格数据。......