leetcode刷题MySQL题解十四

Posted hhh江月

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode刷题MySQL题解十四相关的知识,希望对你有一定的参考价值。

leetcode刷题mysql题解十四

题目叙述

给定一个表 tree,id 是树节点的编号, p_id 是它父节点的 id 。

±—±-----+
| id | p_id |
±—±-----+
| 1 | null |
| 2 | 1 |
| 3 | 1 |
| 4 | 2 |
| 5 | 2 |
±—±-----+
树中每个节点属于以下三种类型之一:

叶子:如果这个节点没有任何孩子节点。
根:如果这个节点是整棵树的根,即没有父节点。
内部节点:如果这个节点既不是叶子节点也不是根节点。

写一个查询语句,输出所有节点的编号和节点的类型,并将结果按照节点编号排序。上面样例的结果为:

±—±-----+
| id | Type |
±—±-----+
| 1 | Root |
| 2 | Inner|
| 3 | Leaf |
| 4 | Leaf |
| 5 | Leaf |
±—±-----+

题目解答

# Write your MySQL query statement below
select id, if(p_id is null, 'Root', if(id in (select p_id from tree t0), 'Inner', 'Leaf')) as Type from tree t1;


题目运行

以上是关于leetcode刷题MySQL题解十四的主要内容,如果未能解决你的问题,请参考以下文章

leetcode刷题MySQL题解十四

leetcode刷题MySQL题解十四

leetcode刷题MySQL题解十二

leetcode刷题MySQL题解十三

leetcode刷题MySQL题解十

leetcode刷题MySQL题解十