是否可以在Postgresql继承中从父级访问子信息?

时间:2013-11-17 21:46:41

标签: sql postgresql

我正在为一个站点创建数据库结构,我正在使用第一次表继承。当我在主桌上做出选择时,我需要知道是否有可能抓住儿童田地。 我的桌子就是......

CREATE TABLE actions (
     action_id integer,
     action_type varchar
);

CREATE TABLE likes (
    somefield char(10)
) INHERITS (actions);

当我在不使用JOIN的情况下选择动作表时,是否有选项可以获得“likes.somefield”?

1 个答案:

答案 0 :(得分:1)

执行所需操作的唯一方法是直接从目标表中进行选择。如果您(比方说)希望NULLsomefield所有非likes记录,那么您需要:

SELECT
  action_id, action_type, somefield
FROM ONLY likes
SELECT
  action_id, action_type, null
FROM ONLY actions
UNION ALL

但随着表格的增长,这很快变得很麻烦;你基本上没有使用表继承功能。这就是FROM ONLY表示的意思 - 只使用该表,而不是任何孩子。