我有这个表名 MyLevels。
id | level | ParentLevelId
---------------------
1 | basic | 1
2 | silver| 1
3 | gold | 2
4 | stone | 3
5 | wood | 2
在这张表上,每一层都有一个父层。例如"gold"
级别的parent id是2。这意味着父级别是"silver"
。
所以我需要一个查询来在 html 表中获取以下内容:
父级别来自 ParentLevelId
。
level | parent level | distance From Basic
-------------------------------------------
basic | basic | 0
silver | basic | 1
gold | silver | 2
从basic
引用到每个级别距离basic
级别的数字的距离。
例如,wood
级别 id 是 5 和 5 - 1 = 4
。这意味着它距离 basic
级别还有 4 个级别。
这是我唯一的代码:
$conn->prepare('SELECT id, level, ParentLevelId FROM MyLevels');
感谢任何帮助。
谢谢
最佳答案
请试试这个。
select c.level as level, p.level as parent_level, c.id-p.id as distance_from_parent
from MyLevels AS p
JOIN MyLevels AS c on p.id = c.ParentLevelId
关于PHP MySql 从一个表中获取数据并左连接到同一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42060859/