创建具有多个表作为属性类型的属性

问题描述 投票:0回答:2

我有一个包含表 A、B、C 的数据库,是否可以创建另一个表(我们称之为“kind”)

CREATE TABLE public.jedi-kill-list(
    name CHAR(40) PRIMARY KEY,
    object Yoda, Anakin, Joe
);

在这个表中,对象可以是尤达(Yoda)、阿纳金(Anakin)或乔(Joe)吗?

而不是像这样这样做,这应该是可能的:

CREATE TABLE public.jedi-kill-list(
    name CHAR(40) PRIMARY KEY,
    object_A Yoda,
    object_B Anakin,
    object_C Joe
);

谢谢

sql postgresql
2个回答
1
投票

在 Postgres 中,是的。您可以使用表继承。我建议您在文档中阅读它。

基本上,你会说:

CREATE TABLE public.abc_generic (
    name CHAR(40) PRIMARY KEY
);

CREATE TABLE public.a (
    . . .
) inherits (public.abc_generic);

0
投票

正确的解决办法是做不到。

© www.soinside.com 2019 - 2024. All rights reserved.