mysql - 如何在mysql数据库中显示父项及其子项

标签 mysql mysql-workbench

我正在使用 MySQL 数据库。我有包含以下数据的表,表名是帐户:

    id       name      parent-id
     1       aaa          null
     2       bbb          1
     3       ccc          2
     4       ddd          1
     5       eee          3

我想显示如下

      names
       aaa
         bbb
            ccc
               eee
         ddd

我已经尝试了很多,但我没有得到确切的要求。

最佳答案

这将涉及相当多的工作,可能不太可扩展,但以下是我以前做过的类似步骤。

1.确定 child 可以上去的最大深度。 (是 3 吗?),即最远的 child 可以离开根的深度。称之为最大级别。

2.找到每一行的级别,称之为myrowlevel

3.用编号填充名称。等于 (maxlevels - myrowlevel) 或其倍数的空间。

关于mysql - 如何在mysql数据库中显示父项及其子项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28272661/

相关文章:

mysql查询查找按时间变化分组的字段总和

mysql - 连接到服务器上的 MySQL

mysql - 无法将数据从 csv 文件导入到 Ubuntu 上的 mysql 工作台

当我更改表时,MySQL Workbench 不显示列

mysql - 在mysql银行系统中使用左外连接无法得到准确的结果?

php - 单击 PHP 按钮加载更多 MYSQL 结果

mysql - 我有多个主键,我该如何处理格式?

Mysql:如何找到所有具有 ALTER 权限或任何权限的用户?

mysql - AWS RDS 中止连接 Haproxy

mysql - 动态插入 json 键函数中的列名和 json 中的值