【问题标题】:Querying across schemas in Postgres在 Postgres 中跨模式查询
【发布时间】:2010-11-30 15:13:58
【问题描述】:

我正在使用 Postgres,并且我有多个模式(即 S1 和 S2)。我想运行一个使用 S1 和 S2 中的表的查询。有没有可能做这样的事情:

select * from S1.table1, S2.table2

感谢所有回复。

【问题讨论】:

  • 这会给你一个CROSS JOIN,它可能会返回一个巨大的数据集!

标签: sql postgresql schema


【解决方案1】:

是的。语法就是你写的。

【讨论】:

    【解决方案2】:

    确实,我认为正确的查询是:

    select * from S1.table1
    UNION ALL
    select * from S2.table2
    

    【讨论】:

    • OP 并没有很具体地说明他想对数据做什么(只是谈到了一个使用两个表的查询)。根据他的实际目标,正确的解决方案可能是他所说的、您所说的或完全其他的(“Select * from s1.table1 join s2.table2 on....”或“select * from s1.table1 where fieldXYZ 不在(从 s2.table2 中选择 fieldABC)”)。回答这个问题的最佳方法可能是将其解释为询问在表名之前加上相应的模式名称和一个点是否是跨模式引用表的正确方法,答案是肯定的
    猜你喜欢
    • 1970-01-01
    • 2019-03-17
    • 2022-06-14
    • 2014-04-30
    • 1970-01-01
    • 1970-01-01
    • 2022-01-10
    • 2020-03-08
    • 1970-01-01
    相关资源
    最近更新 更多