mongo操作之分页 - skip limit

Javascript查询和$where查询
查询 age > 18 的记录,以下查询都一样
db.users.find({age: {$gt: 18}});
db.users.find({$where: "this.age > 18"});
db.users.find("this.age > 18");

排序sort()
以年龄升序asc
db.users.find().sort({age: 1});
以年龄降序desc
db.users.find().sort({age: -1});

限制返回记录数量limit()
返回5条记录
db.users.find().limit(5);
返回3条记录并打印信息
db.users.find().limit(3).forEach(function(user) {print(‘my age is ‘
+ user.age)});
结果
my age is 18
my age is 19
my age is 20

限制返回记录的开始点skip()
从第3条记录开始,返回5条记录(limit 3, 5)
db.users.find().skip(3).limit(5);

查询记录条数count()
db.users.find().count();
db.users.find({age:18}).count();
以下返回的不是5,而是user表中所有的记录数量
db.users.find().skip(10).limit(5).count();
如果要返回限制之后的记录数量,要使用count(true)或者count(非0)
db.users.find().skip(10).limit(5).count(true);

分组group()
假设test表只有以下一条数据
{ domain: "www.mongodb.org"
, invoked_at: {d:"2009-11-03", t:"17:14:05"}
, response_time: 0.05
, http_action: "GET /display/DOCS/Aggregation"
}
使用group统计test表11月份的数据count:count(*)、total_time:sum(response_time)、
avg_time:total_time/count;
db.test.group(
{ cond: {"invoked_at.d": {$gt: "2009-11", $lt: "2009-12"}}
, key: {http_action: true}
, initial: {count: 0, total_time:0}
, reduce: function(doc, out){ out.count++;
out.total_time+=doc.response_time }
, finalize: function(out){ out.avg_time = out.total_time /
out.count }
} );

[
{
"http_action" : "GET /display/DOCS/Aggregation",
"count" : 1,
"total_time" : 0.05,
"avg_time" : 0.05
}
]

mongo操作之分页 - skip limit

时间: 2024-08-01 22:56:45

mongo操作之分页 - skip limit的相关文章

mongo中的分页查询

/** * @param $uid * @param $app_id * @param $start_time * @param $end_time * @param $start_page * @param $limit_page * mongodb中的分页查询 */ public static function getUserRevenueInfoList($uid, $source,$app_id, $start_time, $end_time,$skip, $limit){ $match

Mysql 分页语句Limit用法

转载自:http://qimo601.iteye.com/blog/1634748 1.Mysql的limit用法 在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能. Sql代码   SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数.LIMIT 接受一个或两个数字参数.参数必须

MySQL分页的LIMIT函数

SELECT * FROM 表名称 LIMIT M,N  .其中的m表示从第几条开始,0表示第一条:n表示一共显示几条. mysql_num_rows:取得结果行的数目. table中奇数行变色或偶数行变色:tr:nth_child(odd或even){里面写入颜色}:其中odd表示奇数行,even表示偶数行.MySQL分页的LIMIT函数,布布扣,bubuko.com

那些年我们学Flask-SQLAlchemy,实现数据库操作,分页等功能

那些年我们学Flask-SQLAlchemy 实现数据库操作,分页等功能  Flask-SQLAlchemy库让flask更方便的使用SQLALchemy,是一个强大的关系形数据库框架,既可以使用orm方式操作数据库,也可以使用原始的SQL命令. Flask-Migrate 是一个数据迁移框架,需要通过Flask-script库来操作. 一.配置Flask-SQLAlchemy 程序使用的数据库地址需要配置在SQLALCHEMY_DATABASE_URI中,SQLALchemy支持多种数据库,配

cassandra高级操作之分页的java实现(有项目具体需求)

接着上篇博客,我们来谈谈java操作cassandra分页,需要注意的是这个分页与我们平时所做的页面分页是不同的,具体有啥不同,大家耐着性子往下看. 上篇博客讲到了cassandra的分页,相信大家会有所注意:下一次的查询依赖上一次的查询(上一次查询的最后一条记录的全部主键),不像mysql那样灵活,所以只能实现上一页.下一页这样的功能,不能实现第多少页那样的功能(硬要实现的话性能就太低了). 我们先看看驱动官方给的分页做法 如果一个查询得到的记录数太大,一次性返回回来,那么效率非常低,并且很有

Python Mongo操作

# -*- coding: utf-8 -*- ''' Python Mongo操作Demo Done: ''' from pymongo import MongoClient conn = None topics = None users=None def process(): connection=MongoClient('localhost', 27017) global conn conn = connection; #列出server_info信息 #print conn.server

学习mongo系列(六)limit(munber),skip(number)

> db.user.find().pretty(){ "_id" : ObjectId("56946fba3a18f4867aecbcd1"), "name" : "admin", "password" : "123456", "title" : "admin", "grade" : 50}{ "_id"

mysql的sql分页函数limit使用

My sql数据库最简单,是利用mysql的LIMIT函数,LIMIT [offset,] rows从数据库表中M条记录开始检索N条记录的语句为: SELECT * FROM 表名称 LIMIT M,N 其中limit为可选项,例如我们有个student表,我们选取前5条记录可以使用下面的sql语句 select * from student limit 5; 例如从表student(主键为id)中从第10条记录(不包括第10跳记录)开始检索20条记录,语句如下: select * from s

mongo操作

1.创建数据库 语法:use database 说明:如果database不存在,就会创建database:如果存在就会切换到database 2.查看所有数据库 语法:show dbs; 说明:如果刚创建了db1,db1里面没有数据,那么使用show dbs ,不会显示出来db1.得先往db1里面插入一条数据 3.mongoDB默认的数据库是test,如果没有创建数据库,则默认放在test里面 4.删除数据库 语法:db.dropDatabase(); 说明:如果删除db1,则需要先进入db1