mongo数据排序和分页显示

数据排序
使用sort()
1 升序
-1 降序
自然排序 数据插入的顺序
$natural

db.stu.drop();
db.stu.insert({"name":"张三","sex":"男","age":18,"score":70,"address":"河南"});
db.stu.insert({"name":"李四","sex":"女","age":20,"score":60,"address":"山东"});
db.stu.insert({"name":"王五","sex":"男","age":17,"score":44,"address":"江苏"});
db.stu.insert({"name":"赵六","sex":"男","age":21,"score":80,"address":"山东"});
db.stu.insert({"name":"孙七","sex":"女","age":23,"score":50,"address":"湖北"});
db.stu.insert({"name":"tom","sex":"男","age":24,"score":20,"address":"海南"});
db.stu.insert({"name":"lucy","sex":"女","age":21,"score":62,"address":"浙江"});
db.stu.insert({"name":"jack","sex":"男","age":20,"score":90,"address":"美国"});
db.stu.insert({"name":"smith","sex":"男","age":19,"score":88,"address":"美国"});

db.stu.find({},{"_id":0,"address":0});
{ "name" : "张三", "sex" : "男", "age" : 18, "score" : 70 }
{ "name" : "李四", "sex" : "女", "age" : 20, "score" : 60 }
{ "name" : "王五", "sex" : "男", "age" : 17, "score" : 44 }
{ "name" : "赵六", "sex" : "男", "age" : 21, "score" : 80 }
{ "name" : "孙七", "sex" : "女", "age" : 23, "score" : 50 }
{ "name" : "tom", "sex" : "男", "age" : 24, "score" : 20 }
{ "name" : "lucy", "sex" : "女", "age" : 21, "score" : 62 }
{ "name" : "jack", "sex" : "男", "age" : 20, "score" : 90 }
{ "name" : "smith", "sex" : "男", "age" : 19, "score" : 88 }
//自然降序
db.stu.find({},{"_id":0,"address":0}).sort({"$natural":-1})
{ "name" : "smith", "sex" : "男", "age" : 19, "score" : 88 }
{ "name" : "jack", "sex" : "男", "age" : 20, "score" : 90 }
{ "name" : "lucy", "sex" : "女", "age" : 21, "score" : 62 }
{ "name" : "tom", "sex" : "男", "age" : 24, "score" : 20 }
{ "name" : "孙七", "sex" : "女", "age" : 23, "score" : 50 }
{ "name" : "赵六", "sex" : "男", "age" : 21, "score" : 80 }
{ "name" : "王五", "sex" : "男", "age" : 17, "score" : 44 }
{ "name" : "李四", "sex" : "女", "age" : 20, "score" : 60 }
{ "name" : "张三", "sex" : "男", "age" : 18, "score" : 70 }

//age升序
db.stu.find({},{"_id":0,"address":0}).sort({"age":1});
{ "name" : "王五", "sex" : "男", "age" : 17, "score" : 44 }
{ "name" : "张三", "sex" : "男", "age" : 18, "score" : 70 }
{ "name" : "smith", "sex" : "男", "age" : 19, "score" : 88 }
{ "name" : "李四", "sex" : "女", "age" : 20, "score" : 60 }
{ "name" : "jack", "sex" : "男", "age" : 20, "score" : 90 }
{ "name" : "赵六", "sex" : "男", "age" : 21, "score" : 80 }
{ "name" : "lucy", "sex" : "女", "age" : 21, "score" : 62 }
{ "name" : "孙七", "sex" : "女", "age" : 23, "score" : 50 }
{ "name" : "tom", "sex" : "男", "age" : 24, "score" : 20 }
//age升序,score降序  观察jack和李四
db.stu.find({},{"_id":0,"address":0}).sort({"age":1,"score":-1});
{ "name" : "王五", "sex" : "男", "age" : 17, "score" : 44 }
{ "name" : "张三", "sex" : "男", "age" : 18, "score" : 70 }
{ "name" : "smith", "sex" : "男", "age" : 19, "score" : 88 }
{ "name" : "jack", "sex" : "男", "age" : 20, "score" : 90 }
{ "name" : "李四", "sex" : "女", "age" : 20, "score" : 60 }
{ "name" : "赵六", "sex" : "男", "age" : 21, "score" : 80 }
{ "name" : "lucy", "sex" : "女", "age" : 21, "score" : 62 }
{ "name" : "孙七", "sex" : "女", "age" : 23, "score" : 50 }
{ "name" : "tom", "sex" : "男", "age" : 24, "score" : 20 }

分页显示
skip(n):表示跨过多少数据行
limit(n):取出的数据行的个数限制

for(var i=0;i<100;i++){
    db.data.insert({"id":i});
}
db.data.find({},{"_id":0})
{ "id" : 0 }
{ "id" : 1 }
............
{ "id" : 19 }
db.data.find({},{"_id":0}).skip(0).limit(5);
{ "id" : 0 }
{ "id" : 1 }
{ "id" : 2 }
{ "id" : 3 }
{ "id" : 4 }
db.data.find({},{"_id":0}).skip(5).limit(5);
{ "id" : 5 }
{ "id" : 6 }
{ "id" : 7 }
{ "id" : 8 }
{ "id" : 9 }
时间: 2024-10-11 07:04:38

mongo数据排序和分页显示的相关文章

如何对sharepoint图片库的文件夹的图片按照时间排序并分页显示

/// <summary> /// 获取图片库第一层文件夹--根据文件夹名称排序 /// </summary> /// <param name="siteUrl"></param> /// <param name="weburl"></param> /// <param name="listID"></param> /// <returns>

数据资料的分页显示,增删改

题目要求: 1,查找数据库资料,分页显示, 2,可以增.删.改, 3,可以按条件查找. main.php 1 <?php 2 include("./init.inc.php"); 3 4 include("../DBDA.class.php"); 5 $db = new DBDA(); 6 7 include("page.class.php"); 8 9 //$_GET["name"]; 10 //$_GET["

LigerUI中通过加载服务端数据进行表格的分页显示

前言:我的这一篇文章是紧接着上一篇关于LigerUI的文章(http://www.zifangsky.cn/379.html)写的,因此在这里我就省略了相关的环境搭建,直接进入正题 一 介绍 在LigerUI中显示表格是用的ligerGrid,同时我们可以通过配置url参数就可以加载远程数据并显示成表格形式.不仅如此,ligerGrid还可以进行数据的排序和分页显示: (1)排序:需要用到"sortname"和"sortorder"这两个参数,分别表示按哪个字段排序

asp网络编程:ASP中实现分页显示的七种武器

在微软的ASP编程体系中,ADO对象的建立,使得从网页访问数据库成为一件易事,特别是ADO的Recordset对象使得控制数据的输出显示更为方便.自由.而在Visual InterDev6.0(以下简称VI6.0)中,由于Script Object Model(以下简称SOM).Design-Time Control(以下简称DTC)以及Data Environment Object Model(以下简称DEOM)等对象模型的引入,使网页对数据库的访问设计显得更为方便. 因为主题方面的原因,关于

ASP.NET使用ListView数据绑定控件和DataPager实现数据分页显示(一)

为什么使用ListView+DataPager的方式实现分页显示? .net提供的诸多数据绑定控件,每一种都有它自己的优点和缺点.如果需要对数据进行操作,如果数据量不大的情况下,DataList和GridView是最好的选择,但是他们会生产额外的<table><tr><tbody><td>标签.如果只是罗列出来一些简单的数据,出于对性能的考虑,repeater必然是首选.当然ListView和DataPager的组合必将是开发中的黄金组合,无论从性能上和功能

Servlet——实现数据分页显示

Servlet实现数据分页显示 1.数据分页的应用 在很多情况下,Web网页的显示结果都很多,不可能在一个页面完全显示出来,这时候就需要用到数据分页 比如我们很熟悉的Google搜索结果: 那么怎么通过Servlet实现这个功能呢? 2.Servlet连接数据库 首先我们的数据是存放在数据库中,那么就需要Servlet去连接数据库,从而获取数据. Servlet连接数据库的步骤同JavaSE连接数据库的操作一样其实Servlet本身也就是Java. 首先需要准备Java连接数据库的相关jar包不

PHP+Mysql————数据分页显示技术

通常情况下,一个页面加载大量的数据时,数据不可能同时显示出来.这时候,比较常用的方法就是滚动条和分页.看过电子书的孩子都知道,电子书那么多字,一个手机或pad的屏幕是无法全部显示的,开玩笑,一本几兆的书就好几百万字,一下子放到几寸的屏幕上,不得亮瞎你的眼.所以我们都是下滑使文字进行滚动或翻页.这篇博文就用来分享一下php的分页技术. 首先获取数据库中某表的数据,输出到网页上,然后再进行分页显示.一句话就讲明白了,但具体怎么分页的,请看代码. <?php header("content-ty

PHP之分页显示数据-新闻系统

一.项目设计 1.项目要求 2.主页面使用frame框架进行设计,内容如下: index.php <span style="font-family:SimSun;font-size:18px;"><html> <frameset rows="80%,20%" frameborder="no" border="0" cols="900px"> <frameset co

PHP从零单排(十四)数据分页显示的原理及实现

分页显示是WEB编程中最频繁处理的环节之一.所谓分页显示,就是通过程序将结果集一段一段的来显示.实现分页显示,需要两个初始参数:每页显示多少记录和当前是第几页.再加上完整的结果集,就可以实现数据的分页显示.至于其他功能,比如上一页.下一页等均可以根据以上信息加以处理得到. 要取得某表中的前10条记录,可以使用如下SQL语句: SELECT * FROM a_table LIMIT 0,10 要查找第11到第20条记录,使用的SQL语句如下所示: SELECT * FROM a_table LIM