在数据库设计中,通常使用ID/PID这样的模式表示上下级关系,最常见的就是category表的设计,比如
CREATE TABLE IF NOT EXISTS `item`.`item_category` (
`item_category_id` BIGINT UNSIGNED NOT NULL,
`store_id` BIGINT UNSIGNED NOT NULL COMMENT '所属店铺ID',
`category_name` VARCHAR(45) NOT NULL COMMENT '分类名称',
`parent_id` BIGINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '父级分类ID',
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
`create_user_id` BIGINT UNSIGNED NOT NULL,
`last_modify_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`last_modify_user_id` BIGINT UNSIGNED NOT NULL,
`is_deleted` BIGINT UNSIGNED NOT NULL DEFAULT 0,
PRIMARY KEY (`item_category_id`)
)
COMMENT = '商品分类'
使用parent_id表示上级分类,这种表示上下级的方式在数据库设计中很通用,因此,是否有种方式将这种结构快速的生成树形结构呢?