【发布时间】:2018-05-14 09:53:02
【问题描述】:
我需要帮助来计算层次结构数组中的值。我有一张这样的桌子:
+--------+------------+-------+-----------+
| kia_id | kia_name | value | parent_id |
+--------+------------+-------+-----------+
| 1 | ac service | | 0 |
| 2 | hil | | 0 |
| 3 | dispatch | | 1 |
| 4 | tat main | 13.3 | 3 |
| 5 | tat air | 10.1 | 3 |
| 6 | sla comp | 11.7 | 2 |
| 7 | sla serv | | 2 |
| 8 | slb | 9.9 | 7 |
+--------+------------+-------+-----------+
我想像这样在 html 中显示该表格:
+--------+----------------+-------+-----------+------------------------+
| kia_id | kia_name | value | parent_id | total_value_from_child |
+--------+----------------+-------+-----------+------------------------+
| 1 | ac service | | 0 | 23.4 |
| 3 | dispatch | | 1 | 23.4 |
| 4 | tat main | 13.3 | 3 | |
| 5 | tat air | 10.1 | 3 | |
| 2 | hil | | 0 | 21.6 |
| 6 | sla comp | 11.7 | 2 | |
| 7 | sla serv | | 2 | 9.9 |
| 8 | slb | 9.9 | 7 | |
+--------+----------------+-------+-----------+------------------------+
如何计算所有子值来设置这个父级的总数,请帮助我..
【问题讨论】:
-
我已经删除了不兼容的标签。重新标记您实际使用的
DBMS。 -
@YogeshSharma 好的,谢谢 ..
-
ac_service的总值是否正确,您的预期结果中dispatch的值发生了什么变化?ac_service的子代是dispatch,其值为12.2(在您的原始数据中)。这还有 2 个子tat main和tat air,其值分别为13.3和10.1。12.2 + 13.3 + 10.1 = 35.6不是23.4。请解释你的逻辑。同时发布您已经尝试过的内容并以可消耗的格式提供您的数据:Forum Etiquette: How to post a T-SQL Question。 -
@Larnu 对不起,我已经修好了
-
谢谢,现在您只需要发布那些消耗性数据以及您已经尝试过的内容。 :)
标签: php sql sql-server