【问题标题】:MongoDB and Pymongo, query FULLTEXT in all collectionsMongoDB 和 Pymongo,在所有集合中查询 FULLTEXT
【发布时间】:2021-02-16 21:39:44
【问题描述】:

我有一个包含多个集合的本地 MongoDB 数据库。 我在 jupyter notebook 中使用 pymongo,我想做的是运行一个查询 FULLTEXT 来查找 所有存在的集合 上的数据。 是否有可能做到这一点?如果是这样,我该如何进行?

from pymongo import MongoClient
client = MongoClient('mongodb://localhost:27017/')
client.list_database_names()
out: ['admin', 'config', 'local']

在本地我有更多收藏: 这就是我只用一个集合所做的事情

db = client["local"]
firstdb = db["firstdb"]

result = db.firstdb.find({"email": {"$regex":"test","$options": 'i'}})
for item in result:
    print(item['email'],item['log'])

本质上,我还想在 secondbthirdbfourthdb 等上执行 电子邮件查询 .等等

【问题讨论】:

    标签: python database mongodb jupyter-notebook pymongo


    【解决方案1】:

    没有人可以帮助我吗?基本上我必须对 all collections 进行 FULLTEXT 查询。

    我找到的唯一解决方案是:

    result = db.firstdb.find({"email": {"$regex":"test","$options": 'i'}})
    result1 = db.secondb.find({"email": {"$regex":"test","$options": 'i'}})
    result2 = db.thirdb.find({"email": {"$regex":"test","$options": 'i'}})
    
    
    
    for item in result:
        print(item['email'],item['log'])
    for item in result1:
        print(item['email'],item['date'])
    for item in result2:
        print(item['email'],item['account'])
    

    但我不确定我是否走在正确的轨道上!

    感谢任何可以帮助我的人!

    PS:我不想改变集合的结构,问题可能发生在其他数据库中

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-02-14
      • 1970-01-01
      • 2010-12-17
      • 2022-01-04
      • 1970-01-01
      • 2021-09-18
      • 1970-01-01
      • 2017-09-15
      相关资源
      最近更新 更多