mongodb 查询数据是否存在

在 MongoDB 中,我们可以使用 findOne find 方法来查询数据是否存在。这两个方法的区别在于, findOne 方法返回匹配的第一条记录(或 null),而 find 方法返回一个游标,您可以使用它来迭代所有匹配的记录。

下面是使用 findOne 方法来查询数据是否存在的示例:

db.collection.findOne({query})

其中,db 是一个 MongoDB 数据库对象,collection 是您要查询的集合名称,query 是一个 JSON 对象,包含您的查询条件。如果找到匹配的记录,该方法将返回该记录的完整文档。否则,它将返回 null。

如果您只是想检查是否存在任何匹配的记录,可以使用以下代码:

const exists = db.collection.findOne({query}) !== null

其中,exists 是一个布尔变量,如果找到匹配的记录,则为 true,否则为 false。

如果您想使用 find 方法来查询数据是否存在,可以使用以下代码:

const cursor = db.collection.find({query})
const exists = cursor.hasNext()

其中,cursor 是一个游标对象,您可以使用它来迭代所有匹配的记录。hasNext 方法返回一个布尔值,指示游标是否有下一个文档。如果找到匹配的记录,hasNext 将返回 true。否则,它将返回 false。在上面的示例中,我们只检查是否存在任何匹配的记录,因此我们只需要检查游标是否有下一个文档。

  •