mongodb 入门学习-模糊查询、类型查询、Limit、Skip(三)总结

本文介绍了MongoDB的基础查询操作,包括使用正则表达式进行模糊查询,利用$type进行类型查询,结合limit和skip实现分页,以及运用sort命令进行升序和降序排序。重点强调了模糊查询对字符串类型的限制和排序的多种方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本篇主要从模糊查询,类型查询,Limit 行数以及排序方面进行开展。

1 模糊查询

在mongo 中模糊查询不同于SQL 中的关键字,其他的方式mongo 通过$ge 等的方式进行匹配,模糊查询比较特殊,采用的是正则匹配的方式。通过 /keyword/  代表 SQL 中like '%keyword%',  /^keyword/  代表 like 'keyword%', /keyword$/  代表like '%keyword'.  目前测试好像只对字符串类型有效。

db.col.find({title:/学生/})
db.col.find({title:/^学生/})
db.col.find({title:/学生$/})

2 类型查询

类型查询是通过关键词 $type 进行匹配, $type 可以按类型值或者数字值筛选当前集合中的数据。

常用语法

db.col.find({"name" : {$type : 2}})
或
db.col.find({"name" : {$type : 'string'}})

 

数据类型参考表格: 

TypeNumberAliasNotes
Double1“double” 
String2“string” 
Object3“object” 
Array4“array” 
Binary data5“binData” 
Undefined6“undefined”Deprecated.
ObjectId7“objectId” 
Boolean8“bool” 
Date9“date” 
Null10“null” 
Regular Expression11“regex” 
DBPointer12“dbPointer”Deprecated.
JavaScript13“javascript” 
Symbol14“symbol”Deprecated.
JavaScript (with scope)15“javascriptWithScope” 
32-bit integer16“int” 
Timestamp17“timestamp” 
64-bit integer18“long” 
Decimal12819“decimal”New in version 3.4.
Min key-1“minKey” 
Max key127“maxKey”

 3 limit  和 skip

SQL 中 过滤限制行数返回通过 limit n,m 的方式进行, 在mongo 中需要搭配使用 limit 和skip 命令进行。skip 默认从0开始。

db.demo.find({}).limit(2).skip(7);   类似于 SQL  limit 7,2

通过 $natural  关键字按照插入顺序进行排序。

db.demo.find({}).sort({ $natural:-1 })    $natural : 1 默认插入顺序, -1  按插入顺序倒排。

db.COLLECTION_NAME.find().limit(NUMBER).skip(NUMBER)

4 sort 排序

SQL 中通过order by  进行排序, asc 升序,desc 降序,而mongo 中  通过 sort 命令进行排序,参数 1 代表升序,-1 代表降序。

db.COLLECTION_NAME.find().sort({KEY:1})

按关键字ascill 码排序  

 

 

按插入顺序倒排 

 

总结, 本篇主要就日常的模糊查询,分页查询,排序进行了学习,需要注意的一是模糊查询采用正则匹配,针对字符串类型数据,二是排序时可以通过自然查询的方式进行顺序和倒序排列,以及关键字的ascill 排序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值