当前位置: 首页 > news >正文

Leetcode 3103. 查找热门话题标签 II

1.题目基本信息

1.1.题目描述

表:Tweets

±------------±--------+

| Column Name | Type |

±------------±--------+

| user_id | int |

| tweet_id | int |

| tweet_date | date |

| tweet | varchar |

±------------±--------+

tweet_id 是这张表的主键 (值互不相同的列)。

这张表的每一行都包含 user_id, tweet_id, tweet_date 和 tweet。

题目保证所有 tweet_date 都是 2024 年 2 月的合法日期。

编写一个解决方案来找到 2024 年 二月 的 前 3 热门话题 标签。一条推文可能含有 多个标签。

返回结果表,根据标签的数量和名称 降序 排序。

1.2.题目地址

https://leetcode.cn/problems/find-trending-hashtags-ii/description/

2.解题方法

2.1.解题思路

递归

2.2.解题步骤

第一步,递归的从tweet中提取标签

1.1.获取推特中的第一个标签(递归初始化)

1.2.递归主体

第二步,统计各个标签的id数量,并取前三个

3.解题代码

sql代码

# Write your MySQL query statement below
# 知识点:SUBSTRING_INDEX(field,sep,count),如果count为正,返回field字符串中从左侧数起第count个sep分隔符前面的字符子串,如果count为负,返回field字符串中从右侧数起第-count个sep分隔符后面的字符子串。TRIM([LEADING|TRAILING] str1 FROM field),从field串的前面或者后面删除str1字符串
# 第一步,递归的从tweet中提取标签
WITH RECURSIVE t1 AS (# 1.1.获取推特中的第一个标签(递归初始化)SELECT tweet_id, SUBSTRING_INDEX(SUBSTRING_INDEX(SUBSTRING_INDEX(tweet, '#', 2), '#', -1), ' ', 1) as tag, TRIM(LEADING SUBSTRING_INDEX(tweet, '#', 2) FROM tweet) AS remain_tagsFROM TweetsWHERE tweet LIKE '%#%' AND YEAR(tweet_date) = 2024 AND MONTH(tweet_date) = 2UNION ALL# 1.2.递归主体SELECT tweet_id, SUBSTRING_INDEX(SUBSTRING_INDEX(SUBSTRING_INDEX(remain_tags, '#', 2), '#', -1), ' ', 1) as tag, TRIM(LEADING SUBSTRING_INDEX(remain_tags, '#', 2) FROM remain_tags) AS remain_tagsFROM t1WHERE remain_tags LIKE '%#%'
)# 第二步,统计各个标签的id数量,并取前三个
SELECT CONCAT('#', tag) AS hashtag, COUNT(tweet_id) AS count
FROM t1
GROUP BY tag
ORDER BY count DESC, tag DESC
LIMIT 3

4.执行结果

http://www.xdnf.cn/news/634321.html

相关文章:

  • 仓鼠找sugar--lca+图论判断点在路径
  • LangChain02-Agent与Memory模块
  • git子模块--命令--列表版
  • 机器学习——支持向量机SVM
  • 类欧几里得算法(floor_sum)
  • uni-app学习笔记十四-vue3中emit的使用
  • Lua 脚本在 Redis 中的运用-23(Lua 脚本语法教程)
  • 计算机视觉中的可重复性:深入案例分析与Python代码实现
  • 【MySQL成神之路】MySQL函数总结
  • 【寻找Linux的奥秘】第八章:进程控制
  • 我的第1个爬虫程序——豆瓣Top250爬虫的详细步骤指南
  • 云原生安全:网络协议TCP详解
  • GO 语言进阶之 时间处理和Json 处理
  • 2025.05.23 Axure 动态面板学习笔记
  • Python经典算法实战
  • 股票程序化交易-使用python获取新浪财经期货行情数据
  • 历年吉林大学保研上机真题
  • 历年复旦大学保研上机真题
  • React整合【ECharts】教程003:关系图的构建和基本设置
  • 项目难点 与 缓存
  • 制作一枚可随身携带的Linux服务器虚拟机
  • Linux核心技术:Linux文件系统与bootFS/rootFS
  • 高级特性实战:死信队列、延迟队列与优先级队列(二)
  • 6个月Python学习计划 Day 4
  • MySQL#秘籍#一条SQL语句执行时间以及资源分析
  • 机器学习-模型选择与调优
  • 【慧游鲁博】【8】前后端用户信息管理:用户基本信息在小程序端的持久化与随时获取
  • vue2项目搭建
  • Maven与Spring核心技术解析:构建管理、依赖注入与应用实践
  • 私有知识库 Coco AI 实战(七):摄入本地 PDF 文件