我想从 Google Spanner 中的两个不同数据库查询两个不同的表。我想做这样的事情:
SELECT T1.C1
,T2.C3
,T2.C4
FROM Database1.Table1 T1
INNER JOIN Database2.Table2 T2
ON T1.C1 = T2.C2
但是,当我将数据库名称与表名称(Database.table)一起使用时,我收到错误
找不到表:'Database.table'
有没有其他方法可以实现此目的,或者唯一的解决方法是在同一数据库中创建所有表?
不,正如您所发现的,无法连接两个单独数据库中的表 - Spanner 客户端是针对每个数据库的。
要么将所有表放在一个数据库中,要么在应用程序级别执行联接,每个数据库实例使用一个 Spanner 客户端实例。
我相信您可以使用 BigQuery 通过联合查询来完成此操作,请参阅 文档