树形结构排序1
CREATE TABLE `house_structure` (
`id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '房源结构id',
`house_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '房源结构名称',
`pid` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '父级节点id',
`path` varchar(8000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '完整路径',
`path_name` varchar(4900) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '完整路径名称',
`sort` int(0) NULL DEFAULT NULL COMMENT '排序',
`relevant_files` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '相关附件',
`remarks` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注',
`create_user_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '建立人ID',
`create_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '建立人姓名',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '建立时间',
PRIMARY KEY (`id`) USING BTREE
)
"SELECT " +
" length( path_name ) - length( REPLACE ( path_name, '>', '' ) ) + 1 AS structureLevel, " +
" ( " +
" SELECT " +
" GROUP_CONCAT( " +
" LPAD( b.sort, 3, 0 ) " +
" ORDER BY " +
" ( length( path_name ) - length( REPLACE ( path_name, '>', '' ) ) + 1 ) ASC SEPARATOR '' " +
" ) AS group_sort " +
" FROM " +
" house_structure b " +
" WHERE " +
" FIND_IN_SET( b.id, house_structure.path ) " +
" ) as groupSort, " +
"FROM " +
" house_structure " +
全路径名称替换
SELECT (
SELECT
GROUP_CONCAT(
b.house_name
ORDER BY
( length( path_name ) - length( REPLACE ( path_name, '>', '' ) ) + 1 ) ASC SEPARATOR '>'
) AS group_sort
FROM
house_structure b
WHERE
FIND_IN_SET( b.id, house_structure.path ) ) full_name,
house_structure.*
FROM house_structure
择善人而交,择善书而读,择善言而听,择善行而从。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
2022-05-18 mybatis-plus中wrapper的用法
2022-05-18 Loading 遮罩
2022-05-18 Map的value转化为其它类型
2022-05-18 new HashMap() {{ }}