【问题标题】:How to search for values in TinyDB如何在 TinyDB 中搜索值
【发布时间】:2019-07-31 16:41:40
【问题描述】:

我想在我的数据库中搜索一个值。我知道您可以使用 db.search() 为键执行此操作,但似乎没有任何类似的函数可用于搜索值

我尝试过使用 contains() 函数,但我遇到了同样的问题。它检查密钥是否包含在数据库中。我想知道数据库中是否包含某个值。

我想做这样的事情,在 tinydb 中搜索值

db.search('value')

如果我能够执行上述命令并获取值(如果它确实存在),或者如果它不存在则没有,那将是理想的。或者,如果能相应地返回 True 或 False,那也可以

【问题讨论】:

    标签: python tinydb


    【解决方案1】:

    我不知道这是否是您要查找的内容,但您可以通过以下命令检查特定字段值:

    from tinydb import Query
    User = Query()
    db.search(User.field_name == 'value')
    

    【讨论】:

    • 看我不想使用键来查找值。如果你知道键和值,那么使用数据库有什么意义呢?我只想要一些简单的东西,我可以输入值,如果它存在则返回 true,否则返回 false
    • 知道key和value的用途是找到其他相关的key和value。当您不知道 iey 时,您将无法找到该值,因为您没有指定在哪里搜索它
    • 为什么搜索不到整个数据库?例如,db.search(where('key')) 在整个数据库中搜索匹配的键。我想要完全相同的东西,但对于值
    【解决方案2】:

    我是新来的(做一些阅读以了解 TinyDB 是否适用于我的用例)所以可能是错误的,并且也知道这个问题有点老了。但是我想知道您是否不能通过遍历每个字段并在其中搜索您的值来解决这个问题。然后,您可以获得值匹配所在的键或字段。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-07
    • 1970-01-01
    • 2016-04-04
    相关资源
    最近更新 更多