我正在尝试在Postgres中构建一个查询。我的背景是SQL Server,所以我遇到了一些语法上的挑战。我的查询需要访问两个独立的服务器上的两个独立的数据库。我需要在数据集之间进行连接。实际上,我在db1中有一个包含用户登录活动的表。用户每次登录网站时都会添加一个条目。在db2上,我有一个列有购买商品的表格。对于每一天,我需要查看:有多少人登录,有多少登录的用户进行了购买。
我的表格如下所示:
Logins Purchases
--------- ---------
ID User_ID
User_ID Amount
LoginDate 如果我的Purchases表上有一个日期字段,这将很容易。但它不是。所以,目前,我尝试了以下几种方法:
SELECT
// Somehow get the number of logins for the given day here
// Somehow I need to get the number of purchases for the given day here
TO_CHAR(TO_TIMESTAMP((LoginDate/1000) - 14400), 'MM/DD/YYYY') AS the_day
FROM
db1.Logins AS t1,
db2.Purchases as t2
GROUP BY the_day
ORDER BY the_day;我如何在Postgres中获得每天的登录和购买次数?谢谢!
发布于 2014-05-22 20:56:02
PostgreSQL不支持跨数据库查询。大多数想要“跨数据库”查询的人最终都会使用其中包含多个模式的单个数据库。我不太确定MS-SQL,但是MySQL的“数据库”更像是PostgreSQL的“模式”。
如果需要跨数据库查询,则必须使用DBLink或postgres-fdw。或者,您可以复制数据-查看Londiste、Slony-I或一个简单的cronjob。
https://stackoverflow.com/questions/23789822
复制相似问题