mongodb数据库条件操作符、排序及索引使用

时间:2024-01-10 01:02:37 标签:  MongoDB  数据库  

一、条件操作符

条件操作符用于比较两个表达式并从mongodb集合中获取数据

db.col_index.find({age:{$gt:18,$lte:19}})

 

二、排序

mongodb使用sort()方法对数据进行排序。参数1升序,-1降序

db.col_index.find({},{age:1,_id:0}).sort({age:-1})

三、索引

1.概述

(1)提高查询效率

(2)写效率会有所降低

(3)索引结构采用平衡树的结构持久化存储,以保证从索引里快速找到某个值对应的位置信息,然后根据位置信息就能读取出对应的文档。

(4)创建集合时默认为主键创建索引

2.创建索引

索引种类:mongodb中支持多种类型的索引,包括单字段索引、复合索引、多key索引、文本索引等。

1单字段索引(同键不能重复建立单一索引)

db.collections.ensureIndex({“name”:1})                                                     //1为升序,-1为降序
 db.collections.find({“name”:”zhangsan”}).explain()

 (2)索引参数

(3)交叉索引  

查询的时候通过多个字段索引查询。效率低,查询多个字段的时候尽量使用复合索引。最终结果是地址做交集。

(4)复合索引

针对多个字段联合创建索引,先按第一个字段排序,第一个字段相同的文档按第二个字段排序,以此类推

 

 (5)复合索引

6多key索引

当索引的字段为数组时,创建出的索引称为多key索引,多key索引会为数组的每个元素建立一条索引。

 

7文本索引

MongoDB支持在字符串内容上执行文本检索的查询操作。为了执行文本检索查询,必须在集合上有一个 text 索引。一个集合只能拥有一个文本检索索引,但是这个索引可以覆盖多个字段。

db.stores.createIndex( { name: "text", description: "text" } )

使用 $text 查询操作符检索。

db.stores.find( { $text: { $search: "java coffee shop" } } )

三、查看索引

db.collections.getIndexes()

 db.collections.getIndexKeys()

db.collections.getIndexSpecs()

db.stu.totalIndexSize()
db.stu.totalIndexSize(0)
db.stu.totalIndexSize(1)
db.stu.totalIndexSize("a")

四、删除索引

db.collections.dropIndex(“name_1”)

db.collections.dropIndexes()  //主键索引不会删除 

五、重建索引。

来源:https://blоg.сsdn.nеt/qq_62178197/аrtiсlе/dеtаils/131312907

智能推荐

 ORDER BY子句必须是SELECT语句中最后一条子句1、排序数据1 select2 col_name3

标签:条件  数据  sql  

 ES官方提供了各种不同语言的客户端,用来操作ES。这些

标签:大数据  java  SpringCloud  数据库  sql  elasticsearch  java  

使用 ORDER BY 进行排序使用 ORDER BY 语句按升序或降序对结果进行排序。ORDER BY 关键字默认按升序排序。要按降序排序结果,使用 DESC 关键字。示例按名称按字母顺序排序结果:import mysql.connectormydb = mysql.connector.connect( host=localhost, user=yourusername, password=yourpassw

标签:数据库查询  操作  数据  mysql  ORDER  

需要注意在使用方法时注意养成以下习惯:

标签:MongoDB  MongoDB  nosql  数据库  

1、介绍 1.1定义 索引是MySQL中能够高效获取数据的一

标签:数据库  

问题如果MongoDB 数据库集合中仅存在一条记录{ _id : ObjectId(5e6b4ef546b5f44e5c5b276d), name : 赵小明, used_name : [ 赵明, 赵小朋 ], age : 16, gender : 0, relatives : [ { name : 赵刚, relationship : 0

标签:操作  MongoDB  elemMatch  

摘要: 本文内容主要来源于互联网上主流文章,只是按照个人理解稍作整合,后面附有参考链接。本文内容主要来源于互联网上主流文章,只是按照个人理解稍作整合,后面附有参考链接。一、摘要本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MySQL时主要打交道的索引,至于哈希索引和全文索引本文暂不讨论。二、常见

标签:索引  原理  数据库  

操作系统 :Windows 10_x64python版本 :3.9.2pymysql版本: 1.0.2MySQL版本: 5.7.38 之前写过一篇关于python操作mysql数据库的文章:https://www.cnblogs.com/MikeZhang/p/pythonOptMysql20170703.html当时是基于python 2.7 和 mysql 5.5来整理的,但目前python 2.7已经不再维护,主流的是python 3,今天基于python 3.9和mysql 5.7重新整理下访问mysql的文档,并提供基础使用示例、代码封装类,以及开发过程中可能会遇到的坑。

标签:操作  数据库  pymsql  mysql  

主要是讲下Mongodb的索引的查看、创建、删除、类型说明,还有就是Explain执行计划的解释说明。  可以转载,但请注明出处。  之前自己写的SpringBoot整合MongoDB的聚合查询操作,感兴趣的可以点击查阅。https://www.cnblogs.com/zaoyu/p/springboot-mongodb.html数组相关的操作https://www.cnblogs.com/zaoyu/p/mongodb_array_operator.html&nbsp

标签:详解  索引  操作  计划  MongoDB  

第1关:创建数据库 命令行 mongo

标签:数据库  

猜你喜欢

MongoDBMongoDB是一种流行的NoSQL数据库,它将数据存储在类似JSON的文档中,使数据库非常灵活和可扩展PyMongoPython需要一个MongoDB驱动程序来访问MongoDB数据库。在本教程中,我们将使用MongoDB驱动程序 PyMongo。建议使用PIP来安装 PyMongo,确保您的Python环境已安装PIP。在命令行中导航到PIP的位置,然后运行以下命令来下载并安装 PyMongo:python -m pip install pymongo

标签:入门  操作  数据库  MongoDB  PyMongo  

索引的定义 索引是一个排序的列表,包含索引字段的值和其对应的行记录

标签:数据库  mysql  

概述 引入:为什么要使用索引?为了提高查找的效率&#

标签:数据库MySQL  mysql  b树  数据库  

条件表达式运算符主要用于实现表达式之间的条件运算,主要包括了null条件判断、条件判断

标签:MongoDB  数据库  nosql  MongoDB  

  前文我们聊到了MongoDB的简介、安装和对collection的CRUD操作,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13941797.html;今天我们来聊下mongodb的索引;  1、为什么要有索引?索引的作用是干嘛的?  我们知道mongodb通常应用在一些web站点,数据量非常大的场景中;在大数据的场景中,对于我们要查询一个数据,mongodb是否能够快速的响应结果就变得尤为的重要;这也是索引存在的意义;索引就是用来帮助我们在很大的数据集中快速查询我们想要的数据;通常我们在mongodb中插入一条数据时,mongodb会自动给我们添加一个_id的字段,这个字段是mongodb内部自己维护,通常

标签:分布式  索引  文档  数据库  MongoDB  

问题1.数据库为什么要设计索引? 索引类似书本

标签:linux  c++  数据库  b树  哈希算法  C/C++  linux  

Mysql:     关系型数据库: 数据在存储时数据和数据之间有一定的关联关系

标签:java 微服务  elasticsearch  java  微服务  

一、名词解释 1)索引 在7.X版本前类似于关

标签:elasticsearch  学习  大数据  

每日一句Nothing like a little truth to sober you up.唯有事实最能让人清醒。概述索引支持在MongoDB中高效地执行查询。如果没有索引,MongoDB必须执行全集合扫描,即扫描集合中的每个文档,以选择与查询语句匹配的文档。这种扫描全集合的查询效率是非常低的,特别在处理大量的数据时,查询可以要花费几十秒甚至几分钟,这对网站的性能是非常致命的。如果查询存在适当的索引,MongoDB可以使用该索引限制必须检查的文档数。索引是特殊的数据结构,它以易于遍历的形式存储集合数据集的一小部分。索引存储特定字段或一组字段的值,按字

标签:索引  MongoDB  

如果你对 ES|QL 还不是很熟悉的话,请阅读之前的文章 “Elasticsearch

标签:ESQL  elasticsearch  Elastic  elasticsearch  大数据  搜索引擎  全文检索  人工智能  sql  

相关问题

相关文章

热门文章

推荐文章

相关标签