【发布时间】:2011-03-27 06:05:30
【问题描述】:
我在为 PostgreSQL 项目创建架构时遇到问题。
这是针对社交网站的,如果有个人资料,并且每个个人资料都分为三种:通用、教育和就业个人资料,因此每个个人资料都需要不同的属性……我们如何在一张表中完成所有这些?
create type ProfileTypeValue as enum
('generic', 'education', 'employment');
create Profiles (
id integer
type ProfileTypeValue
....?
primary key (id)
);
因为例如,如果它是一个教育档案,那么我们需要有机构名称等,或者如果它是一个就业档案,那么我们需要有一个雇主名称属性等。
最好只有 3 个不同的表,每个配置文件类型 1 个,不知道这是否可能……但我觉得我需要一个 if 语句来说明它是否是配置文件,包括这些属性,或者它是否是配置文件,包括这些属性等。
【问题讨论】:
标签: sql database postgresql