PostgreSQL是否可以创建有关特定表中数据的元数据的方法?

时间:2018-10-04 15:33:10

标签: postgresql

我正在处理许多具有相同列类型的唯一数据,但是每组行都具有不同的属性,我正在尝试查看PostgreSQL是否有一种存储有关行组的元数据的方法在数据库中,或者最好将自定义列添加到当前的列列表中以跟踪这些不同的属性。例如,Microsoft Excel提供了一种方法,您可以将多个列合并为一个超级列,以将多个列分组为一个列,但是我不知道这将如何转换为PostgreSQL数据库。有人在想吗?

正确,无法上传文件。希望一切顺利。

Section 1 | Section 2 | Section 3
=================================
Num1|Num2 | Num1|Num2 | Num1|Num2
=================================
132 | 163 | 334 | 1345| 343 | 433
......
......
......

1 个答案:

答案 0 :(得分:1)

具有一个“超级组”列(通常在SQL中,不仅是postgreSQL),最简单的方法是使用多个表。 示例:

人员表可以包含以下列 人名,名字,姓氏

员工表可以包含以下列 人员ID,部门,经理人员ID,工资

客户表可以包含以下列 person_id,地址,城市,州,邮政编码

这样,您可以将他们聚在一起做自己喜欢的事。

示例:

 select *
 from person p
 left outer join student s on s.person_id=p.person_id
 left outer join employee e on e.person_id=p.person_id

或任何变体,在将数据分为不同类型和PERHAPS的过程中,可以节省一点磁盘空间(例如,如果大多数“人”是“客户”,则他们不需要一堆员工数据或具有可为空的列)

这就是我通常处理此类情况的方式,但是如果没有实际示例,很难说出哪种方案最适合您。