database - GQL 语法中的子选择(数据存储查看器)

标签 database google-app-engine syntax gql gqlquery

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

我正在尝试执行此查询,但我在 Datastore Viewer 中收到“GQL 语法”。我该如何执行此 SUBSELECT?

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

最佳答案

你不能。 GQL 不是 SQL。

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

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

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

关于database - GQL 语法中的子选择(数据存储查看器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16261912/

相关文章:

mysql - 将文本文件(保存在我的电脑中)中的数据插入 MySQL 表

java - 致命异常 : AsyncTask, 接收 json

mysql - App Engine 中的 GoLang 动态 SQL 查询

python - 在 GAE 1.6.0 中添加自定义 Jinja2 过滤器

c++ - 在 C(或 C++)中取消引用指针的语法

c# - 是否有一种可移植的方式来表示任意数据库表(结构仅在运行时已知),类似于 DataSet/DataTable 的方式?

MySQL 查询执行时间较长

java - 应用引擎 : missing indexes after restoring backup

c# - 无法访问已实现的属性(从接口(interface))

php - <?php echo $var; 之间有速度差异吗? ?> 和 <?=$var?>?