-
慕慕森
mongodb中有聚合函数,可以使用聚合函数查询最值。案例代码://计算时间编号exports.maxSJBH = function ( callback) {var proxy = new EventProxy();PerMYDFXMongooseModel.aggregate([{$group: {_id: null,maxsjbh: {$max: "$sjbh"}}},{$project: {_id: 0,maxsjbh: "$maxsjbh"}}], proxy.done('models'));proxy.all('models', function (models) {callback(null, models);});}
-
白衣染霜花
我和同事在测试Mongo时,索引还写了不到一半,他想查询某个字段的最大值,结果找了半天文档也没找到关于max的函数。我也很纳闷这是常规函数啊怎么不提供? 后来经过翻阅资料确定Mongo确实不提供直接的max和min函数。但是可以通过间接的方式[sort 和 limit]实现这个。要查询最大值我们只需要把结果集按照降序排列,取第一个值就是了。如我的例子,我想取得集合中年龄最大的人。1 db.person.find({}).sort({"age" : -1}).limit(1)相反如果想要年龄最小的人,只需要把sort中改为{“age”:1}就可以了。当然我们使用了sort,对于小数量的文档是没问题的。当对于大量数据需要给age建立索引,否则这个操作很耗时。
-
慕哥9229398
1、select distinct(类型 ),(select max(单价) from table where 类型 =c.类型 ) from table c。2、举例:person: { // ... name: 'A' did: 'buy a dog'};person: { // ... name: 'B'}。3、相关用法1)# 进入数据库 adminuse admin2)# 增加或修改用户密码(3.0版本用creatuser)db.addUser('name','pwd')3)# 查看用户列表db.system.users.find()4) # 用户认证db.auth('name','pwd')5)# 删除用户db.removeUser('name')6) # 查看所有用户show users7)# 查看所有数据库show dbs8)# 查看所有的 collectionshow collections9)# 查看各 collection 的状态db.printCollectionStats()10)# 查看主从复制状态db.printReplicationInfo()