我正试图获得 _id
在没有得到ObjectId部分的情况下,从一个集合中查询。
当我尝试用这种方式查询时。
db.collection.aggregate([
{'$unwind': '$_id'},
{
'$project': {
'_id': '$_id'
}
}
])
会返回:
ObjectId("51234yhf789")
ObjectId("51234dff779")
ObjectId("51234yhf745")
ObjectId("51234dff123")
ObjectId("51234d45123")
甚至当我尝试: '_id': '$_id'.valueOf()
,我也得到同样的结果。
我怎样才能得到。
51234yhf789
51234dff779
51234yhf745
51234dff123
51234d45123
需要帮助MongoDB V3.6及以下版本的用户。
在MongoDB版本> 4.0
你可以使用 $toString 转换 ObjectId()
变成字符串。
db.collection.aggregate([
{'$unwind': '$_id'},
{
'$project': {
'_id': {$toString : '$_id' }
}
}
])