sql - 从不同的命名空间查询两个表作为一个表

标签 sql postgresql

我在 PostgreSQL 数据库中有两个表,其中包含两个仅命名空间不同的表:Japan.RevenueKorea.Revenue。我想查询它们,因为只有一张表。

例如

  SELECT productgroup, sum(transactionvalue)
  FROM  ???? (Something that combines the two tables) 
  Group by productgroup where ....

我该怎么做?

我需要结合韩国和日本的结果。到目前为止,我确实发送了 2 个查询并将结果合并到应用程序中。一定有更好的办法

最佳答案

您需要完全限定表名并合并结果。 可以为内部查询做的不仅仅是一个简单的选择,但是因为你正在做一个聚合,你需要在外面做。 https://www.postgresql.org/docs/current/static/queries-union.html

SELECT productgroup, sum(transactionvalue)
FROM (
    SELECT * FROM Japan.Revenue
    UNION ALL
    SELECT * FROM Kora.Revenue
) sub
GROUP BY productgroup
WHERE ....
;

编辑:现在使用下面评论中的 UNION ALL。

关于sql - 从不同的命名空间查询两个表作为一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52463887/

相关文章:

php - 我如何按优先级 ID 列表对 mysql 结果进行排序?

mysql - 如何在 sql 中获取列而不是行作为结果

ruby-on-rails - Rails 5 - 如何使用 OR 条件而不是 AND 获取记录

sql - 迭代删除重复记录

mysql - 有没有可能以某种方式增加PK?

sql - 需要SQL查询以查找没有子记录的父记录

php - MYSQL表有静态值和动态值

sql - PostgreSQL 查询选择上周的数据?

sql - postgres 带有等级的窗口函数

ruby-on-rails - 迁移期间未定义的方法 'bool' (Rails Heroku Postgres)