我偶然发现了以下无法解决的问题 我在数据库中有以下表格
CREATE TABLE `departments` (
`Company` int(11) NOT NULL,
`Department` varchar(32) NOT NULL,
`DepartmentName` varchar(40) NOT NULL,
`parentDepartment` varchar(32) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO `departments` (`Company`, `Department`, `DepartmentName`, `parentDepartment`) VALUES
(1, '1', 'Company1 Ltd', '1'),
(1, '101', 'Information Technology', '1'),
(1, '10101', 'Hardware', '101'),
(1, '10102', 'Software', '101'),
(1, '102', 'Sales Department', '1'),
(1, '10201', 'Travelling', '101');
COMMIT;
基本上是公司的部门清单。每个部门都可以使用“parentDepartment”字段“嵌套”在另一个部门之下。
Department
字段是部门的代码。但编号与“结构”无关。
我想要实现的目标可以在下面的图片中看到。
问题是如何对此表进行排序并保持关系可见?
谢谢
答案 0 :(得分:0)
试试这个:
SELECT *
FROM departments
ORDER BY department;