溫馨提示×

mongodb字符串怎么按數值排序

小億
209
2023-11-13 18:41:17
欄目: 云計算

在MongoDB中,可以使用$sort操作符來按數值對字符串進行排序。首先,你需要將字符串轉換為數值類型,然后使用$sort操作符對數值進行排序。

以下是一個示例:

  1. 創建一個包含字符串的集合:
db.collection.insertMany([
  { name: "John", age: "25" },
  { name: "Alice", age: "30" },
  { name: "Bob", age: "20" }
]);
  1. age字段進行數值排序:
db.collection.aggregate([
  { $addFields: { ageNum: { $toInt: "$age" } } },
  { $sort: { ageNum: 1 } }
]);

在這個示例中,我們使用$addFields操作符創建一個新字段ageNum,將age字段轉換為數值類型。然后,使用$sort操作符按升序對ageNum字段進行排序。

結果如下:

{ "_id" : ObjectId("5fe7a3a6d0d8b132c9b9a8b2"), "name" : "Bob", "age" : "20", "ageNum" : 20 }
{ "_id" : ObjectId("5fe7a3a6d0d8b132c9b9a8b0"), "name" : "John", "age" : "25", "ageNum" : 25 }
{ "_id" : ObjectId("5fe7a3a6d0d8b132c9b9a8b1"), "name" : "Alice", "age" : "30", "ageNum" : 30 }

現在,集合中的文檔已按ageNum字段的數值進行排序。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女