Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring 查询从MongoDb获取春季前10名用户_Spring_Mongodb_Spring Boot - Fatal编程技术网

Spring 查询从MongoDb获取春季前10名用户

Spring 查询从MongoDb获取春季前10名用户,spring,mongodb,spring-boot,Spring,Mongodb,Spring Boot,所以基本上我有一个集合,看起来像这样(其他字段省略): ] 我正在寻找一种查询MongoDB的方法,以获得前10名活动用户(DB中记录最多的用户)。有没有一种简单的方法可以实现这一点,也许只是使用界面?也许一个简单的组聚合将为您提供所需的结果 db.Users.aggregate( [ { $group:{ _id:“$user”, 计数:{$sum:1} } }, { $sort:{count:-1} }, { 限额:10元 }, { $项目:{ 用户:“$\u id”, _身份证号码:0 }

所以基本上我有一个集合,看起来像这样(其他字段省略):

]


我正在寻找一种查询MongoDB的方法,以获得前10名活动用户(DB中记录最多的用户)。有没有一种简单的方法可以实现这一点,也许只是使用界面?

也许一个简单的组聚合将为您提供所需的结果

db.Users.aggregate(
[
{
$group:{
_id:“$user”,
计数:{$sum:1}
}
},
{
$sort:{count:-1}
},
{
限额:10元
},
{
$项目:{
用户:“$\u id”,
_身份证号码:0
}
}
])

也许一个简单的组聚合将为您提供所需的结果

db.Users.aggregate(
[
{
$group:{
_id:“$user”,
计数:{$sum:1}
}
},
{
$sort:{count:-1}
},
{
限额:10元
},
{
$项目:{
用户:“$\u id”,
_身份证号码:0
}
}
])

对于聚合,有一种称为
$sortByCount
的方法

List<UserCount> getTop10UserCount() {
  return mongoTemplate.aggregate(
    newAggregation(
      User.class,
      sortByCount("user"),
      limit(10),
      project("_id", "count")
    ), 
    UserCount.class
  );
}

static class UserCount {
  String _id;
  Integer count;
  // constructors, getters or setters..
}
List getTop10UserCount(){
返回mongoTemplate.aggregate(
新聚合(
User.class,
sortByCount(“用户”),
限制(10),
项目(“\u id”,“count”)
), 
UserCount.class
);
}
静态类用户计数{
字符串_id;
整数计数;
//构造函数、getter或setter。。
}

对于聚合,有一种称为
$sortByCount
的方法

List<UserCount> getTop10UserCount() {
  return mongoTemplate.aggregate(
    newAggregation(
      User.class,
      sortByCount("user"),
      limit(10),
      project("_id", "count")
    ), 
    UserCount.class
  );
}

static class UserCount {
  String _id;
  Integer count;
  // constructors, getters or setters..
}
List getTop10UserCount(){
返回mongoTemplate.aggregate(
新聚合(
User.class,
sortByCount(“用户”),
限制(10),
项目(“\u id”,“count”)
), 
UserCount.class
);
}
静态类用户计数{
字符串_id;
整数计数;
//构造函数、getter或setter。。
}