python - 列表中 ID 的大查询
问题描述
目前我知道如何使用 BigQuery Python API 从<company_warehouse>.<table>
表单中进行查询
SELECT id, field1, field2, ...
FROM '<company_warehouse>.<table>'
WHERE field1==...
我想做的是执行上述查询,但添加一个限制,以仅搜索限制为我在 Python 中拥有的大量 ID (作为列表或熊猫系列)的总数据的子集。即,与添加子句相同WHERE id IN (id1,...,idn)
,但是这种方法对于非常大的n 效率低下。
这个问题有一些 SQL 答案建议使用内部连接,但答案不是用清晰可用的代码编写的(即使在其他 SQL DBMS 中也是如此)。如何在 BigQuery 中完成这项工作?
解决方案
你可以写:
WHERE field1 = ... AND
id IN UNNEST(['id1', 'id2', 'id3', 'id4'])
推荐阅读
- azure - Azure Active Directory 撤销给定 aad app-id 的一组用户会话
- pandas - 在另一列熊猫上删除具有特定条件的重复值
- discord - 如何使用 python3 存储不和谐成员?
- perl - 如何在 Windows 上使用 cpan 为 Apache httpd 2.4.41 (xampp) 安装 mod_perl?
- node.js - 尝试在 Google Cloud Functions 中删除文档时收到内部错误
- angular - 我如何用 ngstyle 解决问题?
- javascript - 无法将 Firebase 存储下载 URL 传递给接口属性
- cadence-workflow - 如何从子工作流重新启动父工作流,或者我可以在父工作流本身内重新触发?- 节奏/时间
- azure - Azure Functions - 拥有 host.json 和 local.settings.json 的目的是什么
- swagger - OpenAPI 一些未知值