google-app-engine - GQL随机记录

标签 google-app-engine random gql

Possible Duplicate:
Fetching a random record from the Google App Engine Datastore?

如何使用 GQL 有效地选择随机数据库记录?

例如。我有一个报价模型,我每次都需要选择一个随机报价。这个问题是根据我的理解得出的,即不能保证 ID 属性随着生产服务器中的每次插入而自动递增。

最佳答案

自动生成的 ID 保证是唯一的,但不是连续的或严格递增的。

already many questions关于此stackoverflow ,并在组中。

有几种常见的解决方案:

  • 生成并存储随机数 在您创建实体时, 然后随机选择一个数字并查看 (通过查询)壁橱 记录到它。
  • 实现一些 确保您的实体 ID 的机制 被“密集”填充,然后获取 使用按键在已知范围内。
  • 定期生成随机列表 实体并返回实体 那些 list 。这可能采取以下形式 弹出实体的堆栈的 脱离或作为实际列表 返回。

不想做的是选择一个随机偏移量。偏移的效率非常低,因为数据存储区仍然必须扫描所有跳过的实体。

关于google-app-engine - GQL随机记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4351715/

相关文章:

python - GQL 请求 BadArgument 错误。如何处理我的案子?

java - 如何连接到本地谷歌云数据存储数据库?

mysql - 用随机元音替换 mysql 列中的所有元音

javascript - 使用 Node.js 对应用程序引擎进行本地单元测试

mysql - 生成同一列中不存在的随机值

algorithm - ARM 汇编的 PRNG?

python - 如何使用Python删除App Engine数据存储中的None Type对象?

python - 我们如何忽略 NDB 缓存的查询结果?

python - 谷歌应用引擎 - Python : How to use Namespaces and Ancestors?

google-app-engine - google.appengine.ext.ndb 和 gcloud.datastore 之间有什么区别?