Как применить плотный ранг в MongoDB? - PullRequest
0 голосов
/ 25 октября 2018

Я новичок в Mongo Db и был бы признателен за помощь в этом запросе. Мои идентификаторы разреза и дата создания такие же, как

      TRANSACTION_ID             CREATE_DATE   
 "0:ffff0a0a0983UY:-142"   "Fri Sep 07 16:51:29IST2018"
 "0:ffff0a0a0983UY:-142"    "Fri Sep 07 16:51:29IST2018"
 "0:ffff0a0a0983UY:-142"   "Fri Sep 07 16:51:29IST2018"
 "0:ffff0a0a0983UY:-111"   "Fri Sep 06 16:51:29IST2018"
 "0:ffff0a0a0983UY:-111"    "Fri Sep 06 16:51:29IST2018"

, но как добавить DENSE_RANK как

 DENSE_RANK         TRANSACTION_ID             CREATE_DATE   
     1          "0:ffff0a0a0983UY:-142"   "Fri Sep 07 16:51:29IST2018"
     1          "0:ffff0a0a0983UY:-142"   "Fri Sep 07 16:51:29IST2018"
     1          "0:ffff0a0a0983UY:-142"   "Fri Sep 07 16:51:29IST2018"
     2          "0:ffff0a0a0983UY:-111"   "Fri Sep 06 16:51:29IST2018"
     2          "0:ffff0a0a0983UY:-111"   "Fri Sep 06 16:51:29IST2018"

Любой, пожалуйста, помогите мне

1 Ответ

0 голосов
/ 25 октября 2018

Вы можете использовать запрос на обновление;

db.test.update({"TRANSACTION_ID" : "0:ffff0a0a0983UY:-142"},{"$set" : {"DENSE_RANK" : 1}},{multi : true})

и

db.test.update({"TRANSACTION_ID" : "ffff0a0a0983UY:-111"},{"$set" : {"DENSE_RANK" : 2}},{multi : true})

Вывод:

{
    "_id" : ObjectId("5bd188c34caa61c57872dbe7"),
    "TRANSACTION_ID" : "0:ffff0a0a0983UY:-142",
    "CREATE_DATE" : "Fri Sep 07 16:51:29IST2018",
    "DENSE_RANK" : 1.0
}

{
    "_id" : ObjectId("5bd188c34caa61c57872dbe8"),
    "TRANSACTION_ID" : "0:ffff0a0a0983UY:-142",
    "CREATE_DATE" : "Fri Sep 07 16:51:29IST2018",
    "DENSE_RANK" : 1.0
}

{
    "_id" : ObjectId("5bd188c34caa61c57872dbe9"),
    "TRANSACTION_ID" : "0:ffff0a0a0983UY:-142",
    "CREATE_DATE" : "Fri Sep 07 16:51:29IST2018",
    "DENSE_RANK" : 1.0
}
{
    "_id" : ObjectId("5bd189044caa61c57872dbec"),
    "TRANSACTION_ID" : "ffff0a0a0983UY:-111",
    "CREATE_DATE" : "Fri Sep 06 16:51:29IST2018",
    "DENSE_RANK" : 2.0
}

{
    "_id" : ObjectId("5bd189044caa61c57872dbed"),
    "TRANSACTION_ID" : "ffff0a0a0983UY:-111",
    "CREATE_DATE" : "Fri Sep 06 16:51:29IST2018",
    "DENSE_RANK" : 2.0
}
...