我正在尝试为我拥有的一张表创建一个视图。对于视图中的一列,我正在尝试从我拥有的表中读取值:
表 A:
id b_id c_id d_id
1 1
2 1
3 1
表 B:
id code
1 64
表 C:
id code
1 98
表 D:
id code
1 26
在上面的表中,A 是我的主表,它分别有两个对表 B 和 C(b_id 和 c_id)的外键引用。对于表 A 中的每一行,只会填充两个引用(b_id 或 c_id)中的一个。
我的任务是为表 A 创建一个视图,比如 v_A,它将具有以下列:
查看 v_A:
code code_table
64 B
98 C
26 D
在上面的视图中,我必须首先检查表 A 中的每一行,填充了哪些外键引用,基于我必须读取列“code”并且列“code_table”将具有名称表我正在填充“代码”列。
我已经能够创建简单的视图,但这对我来说有点棘手。我正在检查我是否可以使用case ...when相同但也变得有点复杂。我还可以从information_schema表中读取 postgres 中的表名。所以我有一些解决方案,但不明白如何把它们放在一起。
有人可以指出我正确的方向吗?
谢谢!!