Pymongo 查找在列表中使用 $in
Pymongo find using $in with a list
以下表达式工作正常,返回与值列表匹配的值:
[...].find({"FieldName":{"$in":["Value1", "Value2", "Value3"]}})
但我在列表对象中有值列表,如下所示:
valuesList = list()
valuesList.append("Value1")
valuesList.append("Value2")
valuesList.append("Value3")
但是使用列表对象,没有得到任何结果:
[...].find({"FieldName":{"$in":[valuesList]}})
我也试过在格式化字符串中扩展列表,如下所示:
strList = ', '.join(valuesList)
[...].find({"FieldName":{"$in":[strList]}})
也是,没有结果。
注意:如果我强制列表只有一个值,它会起作用。仅当提供多个值时,结果为空白。
关于如何在 pymongo 中使用“$in”和列表对象中的值列表有什么想法吗?
我认为您的问题是列表中有列表。
而不是:
[...].find({"FieldName":{"$in":[valuesList]}})
尝试:
[...].find({"FieldName":{"$in":valuesList}})
以下表达式工作正常,返回与值列表匹配的值:
[...].find({"FieldName":{"$in":["Value1", "Value2", "Value3"]}})
但我在列表对象中有值列表,如下所示:
valuesList = list()
valuesList.append("Value1")
valuesList.append("Value2")
valuesList.append("Value3")
但是使用列表对象,没有得到任何结果:
[...].find({"FieldName":{"$in":[valuesList]}})
我也试过在格式化字符串中扩展列表,如下所示:
strList = ', '.join(valuesList)
[...].find({"FieldName":{"$in":[strList]}})
也是,没有结果。
注意:如果我强制列表只有一个值,它会起作用。仅当提供多个值时,结果为空白。
关于如何在 pymongo 中使用“$in”和列表对象中的值列表有什么想法吗?
我认为您的问题是列表中有列表。
而不是:
[...].find({"FieldName":{"$in":[valuesList]}})
尝试:
[...].find({"FieldName":{"$in":valuesList}})