我有一个具有树结构的表,包含 lvl、lft 和 rgt 列。最初我有一个扁平的树,SELECT * FROM tree_table ORDER BY lft ASC
让它按树中的位置排序。但是现在我有sort
列来对节点进行排序。我怎样才能让树按它在树中的位置和它的重量同时排序?我认为使用 MySQL 查询是不可能的,但是我如何使用 PHP 来获得它?
表数据示例按顺序排列lft
id | lft | rgt | level | sort
1 | 1 | 628 | 1 | 0
2 | 2 | 281 | 2 | 3
3 | 3 | 128 | 3 | 0
4 | 4 | 15 | 4 | 1
5 | 16 | 27 | 4 | 5
....
没有sort
列我以相同的顺序显示行,但现在我想得到这个:
id | lft | rgt | level | sort
1 | 1 | 628 | 1 | 0
2 | 2 | 281 | 2 | 3
3 | 3 | 128 | 3 | 0
5 | 16 | 27 | 4 | 5
4 | 4 | 15 | 4 | 1
....