mysql - 使用嵌套集模型按深度对项目进行计数

标签 mysql sql nested-set-model

我正在为我的数据库使用嵌套集模型(来自这里: http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/ ),它工作得很好,但是......

根据“子树的深度”请求,我想要另一个结果。

初步结果:

+----------------------+-------+
| name                 | depth |
+----------------------+-------+
| PORTABLE ELECTRONICS |     0 |
| MP3 PLAYERS          |     1 |
| FLASH                |     2 |
| CD PLAYERS           |     1 |
| 2 WAY RADIOS         |     1 |
+----------------------+-------+

我想要按深度计算项目数,例如初始数据:

+----------------------+-------+
| depth                | count |
+----------------------+-------+
|                    1 |     3 |
|                    2 |     1 |
+----------------------+-------+

我尝试使用 group by 和/或 count(),但它不起作用......

感谢您的帮助!

最佳答案

这是草莓评论的答案:

SELECT depth, COUNT(*) FROM (your query here) x GROUP BY depth

关于mysql - 使用嵌套集模型按深度对项目进行计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28181182/

相关文章:

php - 如何防止使用每个 IP 地址的 PDO 连接进行反向 DNS 查找?

php - 如何为数据库中的 N 个用户维护单个用户的多个唯一数据

sql - "join table"是 SQL JOIN 的结果,还是多对多之间的表

mysql - 使用 "in"慢速连接和子查询的 SQL 嵌套集查询

php - 如何将嵌套集模型数据格式化为数组?

php - 无法使用 PHP PDO 连接到使用 Docker 运行的本地 MariaDB

php - 如果WordPress中的meta_key=x AND meta_value=y,我该如何显示图像?

c# - 所请求的名称有效,但未找到所请求类型的数据

sql - 从本地数据库表插入数据到远程数据库表

nested-set-model - 在嵌套集中查找最低公共(public)祖先