1. 程式人生 > >MongoDB find命令匹配資料,匹配內容和檢索條件不一致

MongoDB find命令匹配資料,匹配內容和檢索條件不一致

 

最後一位隨便輸一個數,就匹配這一條。

問題描述:今天計劃將tweet_id設定為集合的唯一索引,出現一條資料報錯。報錯對應的tweet_id為“255837612277911555”,在pymongo查詢這條資料發現出現的結果和查詢內容最後一位不一致。於是修改最後一位發現,改為其他數字仍然匹配該資料。

----------------------------------2018.12.03更新------------------------------------------------------------

根據文件(1)點選跳轉 (2)英文文件地址

的說明,初步判斷是因為MongoDB長整型和整型資料檢索的區別:

即需要使用find({'tweet_id':NumberLong("255837612277911552")})

 

附:統一化某個欄位資料型別可參見:點選這裡

示例:

db.getCollection('total_user_20181119').find({'id':{$type:16}}).forEach(function(x){
    x.id = NumberLong(x.id);
    db.getCollection('total_user_20181119').save(x)})