【问题标题】:Subselect in GQL syntax (Datastore viewer)GQL 语法中的子选择(数据存储查看器)
【发布时间】:2013-04-28 10:25:55
【问题描述】:

我有两个实体:Cars (ownerId->String) 和 Users (userId->String),其中 ownerId 是表示 userId 的外键。

我正在尝试执行此查询,但在数据存储查看器中出现“GQL 语法”。我该怎么做这个 SUBSELECT?

SELECT * FROM Cars WHERE ownerId IN (SELECT userId FROM Users);

【问题讨论】:

  • 你不能。 GQL 不是 SQL。您将需要进行一次选择,然后迭代并获取/过滤或进行两次选择并在代码中合并。或者在 Car 对象中添加一个标志,告诉您所有者是用户,然后您就不需要了。
  • @Tim - 你应该把它变成一个答案。

标签: database google-app-engine syntax gql gqlquery


【解决方案1】:

你不能。 GQL 不是 SQL。

您将需要进行一次选择,然后迭代并获取/过滤或进行两次选择并在代码中合并。

在 Car 对象中交替添加一个标志,告诉您 Owner 是一个 User,那么您就不需要了

如果您不尝试编写代码,而只是探索,那么 remote_api shell 是一个尝试这些事情的地方。虽然这在 python 中要容易得多;-)

【讨论】:

    猜你喜欢
    • 2015-12-22
    • 2011-04-21
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    • 2012-01-18
    • 2014-10-06
    • 2014-11-26
    相关资源
    最近更新 更多