mongodb データベースにターミナルという名前のコレクションがあります。このコレクションには、値が部分的に文字列で部分的に整数であるマーチャントという名前のフィールドを持つドキュメントがあります。Python で次のコードを使用して、すべての値を文字列にキャストします。
for i in terminals.find():
if "merchant" in i.keys():
terminals.update_one({"_id": i["_id"]}, {"$set": {"merchant": str(i["merchant"])}})
次に、このコレクションに対してクエリを実行しようとすると、奇妙なことが起こります。これは機能します:
print(merchant_category.find_one({"merchant": 000000000194267}))
そして、これはしません:
print(merchant_category.find_one({"merchant": "000000000194267"}))
mongodb シェルでクエリを実行すると、逆のことが起こります。すべての値が文字列に格納されているため、整数を値として使用すると何も返されないということです。誰でも質問に答えることができますか: Python の問題は何ですか?どうすれば修正できますか?