问题描述
假设有这么一组数据
{ 'name': 'Lucy', 'score': 40}
我知道 update 有 $inc 来实现累加,但如果我这里需要的不是加而是乘呢?例如,我想将以上数据中的 score 变为原来的两倍,这该如何实现呢?当然了,我可以做两次查询,第一次获得当前值,第二次去修改,但这样工作量徒增了一倍。
那么,我能否根据查询的当前结果来对数据进行原子更新呢?
问题解答
回答1:用 $mul。

问题描述
假设有这么一组数据
{ 'name': 'Lucy', 'score': 40}
我知道 update 有 $inc 来实现累加,但如果我这里需要的不是加而是乘呢?例如,我想将以上数据中的 score 变为原来的两倍,这该如何实现呢?当然了,我可以做两次查询,第一次获得当前值,第二次去修改,但这样工作量徒增了一倍。
那么,我能否根据查询的当前结果来对数据进行原子更新呢?
问题解答
回答1:用 $mul。
相关文章:1. solaris基础和常用知识 (2)2. 为什么矛那里的 <a href=" " 这地方为什么是空的呢 ??3. 为什么总是提示我说Template "movieTemplate" not found,我路径都引对了呀4. <tr valign="top"> 看不懂5. mysql - sphinx查询 "中国" 时也能查询到 "中华人民共和国"6. MySQL"="自动 like7. node.js mysql Cannot find module "net" 和 "tls"和"fs" 的问题8. mysql 使用 join 还是 "," 进行多表查询???9. mysql - 使用hibernate连接数据库时,数据库版本过高不支持关键字"type" ;10. 发现 <li><a href="/index.php">回到前台</a></li>这样回到首页后,不是登录状态

网公网安备:皖ICP备2020019022号-8 Copyright ¢ 2020-2025 Powered by V1.8 All Rights Reserved 技术支持:乐呵呵网
声明:本站所有资源以学习为主