如果几列是空白或空的,如何提取行
How to get the rows extracted if few columns are blank or empty
我是新手,需要一些帮助来提取 records/row 只有当几列为空白时。下面的代码忽略了空白记录并为我提供了有价值的记录。有人可以在这里提出建议吗?
mongo_docs = mongo.db.user.find({"$and":[{"Param1": {"$ne":None}}, {"Param1": {"$ne": ""}}]})
您使用的查询包含 ne
,表示不等于。您可以将其更改为 eq
(等于)并检查是否获得了所需的结果。
mongo_docs = mongo.db.user.find({"$or":[{"Param1": {"$eq":None}}, {"Param1": {"$eq": ""}}]})
上述代码的简化也将是:
mongo_docs = mongo.db.user.find({"$or":[{"Param1": {"$eq":None, "$eq": ""}}]})
如果exists query更能满足您的要求,您也可以使用
来自评论:您完全正确,该命令将使用多个参数。
mongo_docs = mongo.db.user.find({"$or":[{"Param1": {"$eq":None, "$eq": ""}}, {"Param2": {"$eq":None, "$eq": ""}},{"Param3": {"$eq":None, "$eq": ""}}]})
另外,如果想在更大范围内进行,可以考虑使用text indexes。这些将允许您一次搜索所有测试字段,相同的代码应如下所示:
mongo.db.user.createIndex({Param1: "text", Param2: "text", Param3: "text"})
mongo.db.user.find({$text: {$search: ""}})
以上仅适用于文本内容,我还没有遇到任何整数值的实现,但不明白为什么使用其他 wildcards.
参考文献:
- Search multiple fields for multiple values in MongoDB
- https://docs.mongodb.com/manual/text-search/
- https://docs.mongodb.com/manual/core/index-text/#std-label-text-index-compound
- https://docs.mongodb.com/manual/core/index-wildcard/
我是新手,需要一些帮助来提取 records/row 只有当几列为空白时。下面的代码忽略了空白记录并为我提供了有价值的记录。有人可以在这里提出建议吗?
mongo_docs = mongo.db.user.find({"$and":[{"Param1": {"$ne":None}}, {"Param1": {"$ne": ""}}]})
您使用的查询包含 ne
,表示不等于。您可以将其更改为 eq
(等于)并检查是否获得了所需的结果。
mongo_docs = mongo.db.user.find({"$or":[{"Param1": {"$eq":None}}, {"Param1": {"$eq": ""}}]})
上述代码的简化也将是:
mongo_docs = mongo.db.user.find({"$or":[{"Param1": {"$eq":None, "$eq": ""}}]})
如果exists query更能满足您的要求,您也可以使用
来自评论:您完全正确,该命令将使用多个参数。
mongo_docs = mongo.db.user.find({"$or":[{"Param1": {"$eq":None, "$eq": ""}}, {"Param2": {"$eq":None, "$eq": ""}},{"Param3": {"$eq":None, "$eq": ""}}]})
另外,如果想在更大范围内进行,可以考虑使用text indexes。这些将允许您一次搜索所有测试字段,相同的代码应如下所示:
mongo.db.user.createIndex({Param1: "text", Param2: "text", Param3: "text"})
mongo.db.user.find({$text: {$search: ""}})
以上仅适用于文本内容,我还没有遇到任何整数值的实现,但不明白为什么使用其他 wildcards.
参考文献:
- Search multiple fields for multiple values in MongoDB
- https://docs.mongodb.com/manual/text-search/
- https://docs.mongodb.com/manual/core/index-text/#std-label-text-index-compound
- https://docs.mongodb.com/manual/core/index-wildcard/