salix/db/routines/vn/views/departmentTree.sql

18 lines
418 B
MySQL
Raw Permalink Normal View History

2024-08-20 08:06:10 +00:00
CREATE OR REPLACE DEFINER=`vn`@`localhost`
SQL SECURITY DEFINER
VIEW `vn`.`departmentTree`
AS SELECT `node`.`id` AS `id`,
concat(
CONVERT(
repeat(repeat(' ', 5), COUNT(`parent`.`id`) - 1) USING utf8mb3
),
`node`.`name`
) AS `dep`
FROM (
`vn`.`department` `node`
JOIN `vn`.`department` `parent`
)
WHERE `node`.`lft` BETWEEN `parent`.`lft` AND `parent`.`rgt`
GROUP BY `node`.`id`
ORDER BY `node`.`lft`