【发布时间】:2013-11-13 17:06:18
【问题描述】:
假设电子产品是主要类别,电视、冰箱等是子类别,您将如何使用单个表为其创建数据库架构(表结构)?
【问题讨论】:
标签: database database-design schema database-schema
假设电子产品是主要类别,电视、冰箱等是子类别,您将如何使用单个表为其创建数据库架构(表结构)?
【问题讨论】:
标签: database database-design schema database-schema
我会添加一个引用自身标识列的可空列。
例如: CategoryID(主键)NOT NULL 类别名称不为空 ParentCategoryID NULL 参考 CategoryID
查询这些类型的分层表有时很棘手,但是您可以创建无限级别的子类别。
【讨论】:
使用枚举
CREATE TABLE electronics (
...
category ENUM("TV", "fridge", "etc"),
...
);
如果您需要多个类别的深度:
CREATE TABLE electronics (
...
category ENUM("TV", "fridge", "etc"),
parent_category ENUM("TV", "fridge", "etc"),
...
);
【讨论】: