我想找到基於他們的身份證號碼在我的收藏中的所有元素(只有使用這個號碼的一部分用於搜索):在MongoDB中,有可能根據_id找到所有對象?
我嘗試以下,但它沒有工作:
db.collection.find({"_id":/25/})
我想找到基於他們的身份證號碼在我的收藏中的所有元素(只有使用這個號碼的一部分用於搜索):在MongoDB中,有可能根據_id找到所有對象?
我嘗試以下,但它沒有工作:
db.collection.find({"_id":/25/})
它的工作原理只有_id
是一個字符串:
考慮一個集合:
db.test.insert([
{_id:"123", val:1},
{_id:"256", val:2},
{_id:"125", val:3},
{_id:255, val:4}
]);
個
查詢db.test.find({_id:/25/})
回報只有2個文件:
{
"_id" : "125",
"val" : 3
},
{
"_id" : "256",
"val" : 2
}
有趣的是,在OP已經評論之後,爲什麼你會認爲這是一個答案*「@ AlexBlex,我剛剛測試過它不起作用」*。看起來更像是一次釣魚之旅。 –
評論只是太長了。我可能不得不編輯這個問題來強調OPs _id不是一個字符串。 –
這是一個['ObjectId'(https://docs.mongodb.org/manual/reference/object-id/),而不是一個 「串」,所以正則表達式不適用。仍然可以使用['$ where'](https://docs.mongodb.org/manual/reference/operator/query/where/),但不可取。也沒有真正看到實用性。或許您想要在「範圍」內找到ObjectId值。 –
@BlakesSeven **如果**它是'ObjectId'。 '{_id:「25」}'是一個有效的文檔,正則表達式工作正常。 –
@AlexBlex,我剛測試過它不起作用 –