在GCP Workflows中通过Firestore连接器执行GQL查询的问题
GCP Workflows Firestore 查询相关问题解答
1. parent字段中的database ID具体指什么?
- Firestore数据库的标识,默认情况下为
(default),这是创建Firestore实例时自动生成的默认数据库ID。如果你的项目启用了多数据库模式并创建了自定义数据库,这里就填写你自定义的数据库ID。
2. 是否可以直接传入完整查询语句而非YAML结构化字段?
- 可以。不需要强制使用
structuredQuery结构化参数,直接在请求body中通过gqlQuery字段传入完整的GQL语句即可。
3. 两种实现方式的正确YAML参数
方式一:直接传入完整GQL语句
- getFeeds: call: googleapis.firestore.v1.projects.databases.documents.runQuery args: parent: projects/{projectId}/databases/(default)/documents body: gqlQuery: queryString: "SELECT * FROM PacerFeed WHERE pollInterval >= 0" allowLiterals: true # 允许查询中使用字面量值 result: got
方式二:使用结构化查询参数(对应原需求的结构化字段方式)
- getFeeds: call: googleapis.firestore.v1.projects.databases.documents.runQuery args: parent: projects/{projectId}/databases/(default)/documents body: structuredQuery: select: allFields: {} # 等价于SELECT * from: - collectionId: "PacerFeed" where: fieldFilter: field: fieldPath: "pollInterval" op: "GREATER_THAN_OR_EQUAL" # 对应>=运算符 value: integerValue: 0 result: got
内容的提问来源于stack exchange,提问作者Tom
相关产品推荐
相关产品推荐

