当前位置: 首页 > 编程笔记 >

如何使用LIMIT查询MongoDB?

萧懿轩
2023-03-14
本文向大家介绍如何使用LIMIT查询MongoDB?,包括了如何使用LIMIT查询MongoDB?的使用技巧和注意事项,需要的朋友参考一下

使用limit()方法查询MongoDB。让我们创建一个包含文档的集合

> db.demo58.insertOne({"Name":"David"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e285f8fcfb11e5c34d8991f")
}
> db.demo58.insertOne({"Name":"David"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e285f93cfb11e5c34d89920")
}
> db.demo58.insertOne({"Name":"David"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e285f94cfb11e5c34d89921")
}
> db.demo58.insertOne({"Name":"Mike"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e285f99cfb11e5c34d89922")
}

在find方法的帮助下显示集合中的所有文档-

> db.demo58.find();

这将产生以下输出-

{ "_id" : ObjectId("5e285f8fcfb11e5c34d8991f"), "Name" : "David" }
{ "_id" : ObjectId("5e285f93cfb11e5c34d89920"), "Name" : "David" }
{ "_id" : ObjectId("5e285f94cfb11e5c34d89921"), "Name" : "David" }
{ "_id" : ObjectId("5e285f99cfb11e5c34d89922"), "Name" : "Mike" }

以下是在MongoDB中使用LIMIT的查询-

> v=2;
2
> d=db.demo58.find({"Name":"David"}).limit(v+1);
{ "_id" : ObjectId("5e285f8fcfb11e5c34d8991f"), "Name" : "David" }
{ "_id" : ObjectId("5e285f93cfb11e5c34d89920"), "Name" : "David" }
{ "_id" : ObjectId("5e285f94cfb11e5c34d89921"), "Name" : "David" }
> m=d.size() > v;

这将产生以下输出-

True
 类似资料:
  • 问题内容: 问题答案: 这是从MySQL数据库知识库中获得的: LIMIT子句可用于约束SELECT语句返回的行数。 LIMIT接受一个或两个数字参数,这两个参数都必须是非负整数常量(使用预处理语句时除外)。 为了使查询正常工作,您需要将其编写为 准备好的语句 ,然后执行该 语句 。

  • 问题内容: 如标题所述,我想要一个解决方法… 干杯 问题答案: 您可能会希望将an添加到嵌套查询中。

  • 问题内容: 我想将表中的行从1001开始更新到下一个1000。 我尝试了以下查询: 这给了我语法错误。它是否正确?我在这里犯任何错误吗? 我们可以这样限制更新吗? 另外,我尝试更新的行的数据类型为INTEGER的列p_id具有Null值。因此,我什至无法使用以下查询进行更新: 我上面的查询正确吗? 要做到这一点怎么办? 问题答案: 处理null时,不匹配null值。您可以使用或 可以与但只能一起使

  • 问题内容: 我有一个查询,看起来像这样: ORDER BY如何运作?它会排序所有记录,然后获取前20条记录,还是会获取20条记录并按字段排序? 如果是最后一篇,则不能保证您会真正获得最新的20篇文章。 问题答案: 它将先排序,然后得到前20。数据库还将处理子句中的所有内容。

  • 问题内容: 我正在使用Codeigniter执行分页功能,但我认为这通常适用于PHP / mySQL编码。 我正在使用offset和limit检索目录列表,具体取决于每页要多少结果。但是要知道所需的总页数,我需要知道(结果总数)/(限制)。现在,我正在考虑第二次运行SQL查询,然后计算所需的行数,但不使用LIMIT。但是我认为这似乎是在浪费计算资源。 有没有更好的方法?谢谢! 编辑:我的SQL查询

  • 问题内容: 我有这样的查询: 上述查询^中的结果数为10行。现在,我想知道如何在此查询中获取总结果数: 如何计算此^中所有结果的数量 (与无关)? 其实我想要这个数字: 现在,我想知道如何在没有其他查询的情况下获得总结果数。 问题答案: 添加一列,例如: 如 @Tim Biegeleisen所述 : 关键字在所有其他内容之后应用,因此仍然返回正确的答案。