首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我需要在谷歌数据存储(NoSQL数据库)中计算多个字段的总和

我需要在谷歌数据存储(NoSQL数据库)中计算多个字段的总和
EN

Stack Overflow用户
提问于 2017-06-26 22:11:52
回答 1查看 110关注 0票数 0

我们正在构建一个推荐器,将用户兴趣与地点的特征进行比较。例如。如果用户喜欢“户外”,并且这个地方存储了一个很高的“户外”值,那么这个地方是推荐的。

我的Google Datastore文档结构是

代码语言:javascript
运行
复制
{ "_id" : 1, "name" : "Netherlands", "outdoor": 4, "painting":5, "history": 6, "drink"; 7, "love": 8 }

我想做的是计算多个字段的总和。

使用MongoDB,我可以像这样实现它。

代码语言:javascript
运行
复制
db.characteristics.aggregate(
   [
     { $project: { name: 1, score: { $add: [ "$outdoor", "$love" ] } }}
   ]
)

输出结果将是

代码语言:javascript
运行
复制
{ "_id" : 1, "name" : "Netherlands", "score" : 12 }

我可以用MongoDB query很容易做到这一点,但我不知道如何用google datastore API来做到这一点。

所以如果任何人有我的问题的经验,请让我知道。

EN

回答 1

Stack Overflow用户

发布于 2017-06-26 23:06:27

这不是查询引擎本机支持的特性(虚拟字段)。您只需编写在读取实体后手动聚合字段的代码。

如果您使用的是App Engine Standard和Python NDB客户端库,则可以在模型中使用ComputedProperties,但请记住,这本质上只是一个客户端助手函数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44761728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档