【力扣白嫖日记】608.树节点

前言

练习sql语句,所有题目来自于力扣(https://leetcode.cn/problemset/database/)的免费数据库练习题。

今日题目:

175.组合两个表

表:Person

列名 类型
id int
p_id varchar

树中的每个节点可以是以下三种类型之一:

"Leaf":节点是叶子节点。

"Root":节点是树的根节点。

"lnner":节点既不是叶子节点也不是根节点。

编写一个解决方案来报告树中每个节点的类型。

以 任意顺序 返回结果表。


我那不值一提的想法:

  • 首先梳理表内容,题干一共给了一张表,记录了树中节点id和父节点id。
  • 其次分析需求,需要编写一个方案报告树中的每个节点类型。
  • 在观察了表后,我发现节点有以下规律
  • 1.根节点,p_id是null,没有父节点
  • 2.内部节点,前面有根节点,后面有叶子节点
  • 3.叶子节点,有父节点,但是没有子节点
  • 用SQL写出来
  • 1.case when p_id is null then "root"
  • 2.p_id in (select p_id from Tree)
  • 3.除了上面两种情况就是叶子节点了
sql 复制代码
select id,
    case when p_id is null then "Root" 
    when id in (select p_id from Tree) then "Inner"
    else "Leaf"
    end as type
from Tree

结果:


总结:

能运行就行。


相关推荐
不剪发的Tony老师28 分钟前
CloudDM:一站式数据库开发管理工具
数据库
望获linux1 小时前
【实时Linux实战系列】Linux 内核的实时组调度(Real-Time Group Scheduling)
java·linux·服务器·前端·数据库·人工智能·深度学习
云宏信息1 小时前
【深度解析】VMware替代的关键一环:云宏ROW快照如何实现高频业务下的“无感”数据保护?
服务器·网络·数据库·架构·云计算·快照
怪兽20141 小时前
Redis常见性能问题和解决方案
java·数据库·redis·面试
计算机学长felix2 小时前
基于SpringBoot的“中学信息技术课程教学网站”的设计与实现(源码+数据库+文档+PPT)_2025-10-17
数据库·spring boot·后端
长安城没有风2 小时前
从入门到精通【Redis】Redis 典型应⽤ --- 缓存 (cache)
数据库·redis·后端·缓存
学无止境w2 小时前
Redis在电商中的深度应用:商品缓存、秒杀锁、排行榜的实现与避坑指南
数据库·redis·缓存
象象翔2 小时前
Redis实战篇---添加缓存(店铺类型添加缓存需求)
数据库·redis·缓存
放弃幻想_2 小时前
S4和ECC或者不通CLIENT,不通HANA服务器互相取数
服务器·数据库·sap·abap·abap sap
gx23483 小时前
MySQL-2--数据库的查询
数据库