首页
学习
活动
专区
圈层
工具
发布

MongoDB索引使用总结

虽然上面提到浪费了一个 bit 来表示是否包含小数部分,现在 8 位只表示绝对值了,正负在类型体现了,不会有精度的丢失。...对于范围查询如{a:{$gte:1}},就将其转换为[1.0, inf.0], 这里的inf.0表示无穷大的正数, 为什么不是MaxKey呢?...explain 有三种参数分别对应结果输出的三部分数据: queryPlanner: MongoDB 运行查询优化器对当前的查询进行评估并选择一个最佳的查询计划。...exectionStats:mongoDB 运行查询优化器对当前的查询进行评估并选择一个最佳的查询计划进行执行。在执行完毕后返回这个最佳执行计划执行完成时的相关统计信息。...避免回表 通俗的讲就是,如果索引的列在所需获得的列中(因为索引是根据索引列的值进行排序的,所以索引节点中存在该列中的部分值)或者根据一次索引查询就能获得记录就不需要回表,mongo 默认的查询过程中,

1.1K13
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    SQL简介

    执行顺序: from:确定原始表 where:对原始表的数据进行筛选,符合条件的留下 group by:对留下的数据基于分组条件进行分组 having:对分组后数据进行过滤 select:对于留下的数据进行字段筛选或计算等...order by:排序永远放在最后执行 伪列 oracle独有的pl-sql的内容 rowid 根据数据在硬盘中存储的物理地址计算得来, 作用:数据的默认索引,底层使用 rownum对查询结果进行编号...select rowid,*from table //对 select 别名.* ,rowid from table 别名//对 子查询 子查询使用在where中 如某个查询结果为一条记录中一项(一行一列...:符合条件的数据 两个表顺序无要求,例:工号 部门号 部门号 部门名 若某一表多一行,大表中无那一行 左外连接(顺序有要求,左表为主,左去右找,左边表连接右边表,左找不到右,右部分空) left (outer...order by 涉及的列上建立索引 应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描 如:select id from t where num

    3.2K20

    JimuReport 1.4.0-beta 首个里程碑版本发布,免费的低代码报表

    issues/I45I9E 分版合并列报错issues/I450YZ 表格设置了分版设置Sum函数统计出错issues/I45C35 1.3.76版本导出中包含图表报错,如果只有表格是可以的issues.../I44KQ4 pgsql数据库下图表钻取配置完后保存失败issues/I45I9E 分版空指针异常issues/I450YZ 表格设置了分版设置Sum函数统计出错issues/I45C35 导出中包含图表报错...,可自由拼接、组合,设计炫酷大屏 可设计各种类型的单据、大屏,如出入库单、销售单、财务报表、合同、监控大屏、旅游数据大屏等 #系统截图 报表设计器(专业一流 数据可视化,解决各类报表难题) [up-a2a8557722593e6c5a5e8f015a0df2b70e9...├─支持设计器内冻结窗口 │ │ ├─支持对单元格内容或格式的复制、粘贴和删除等功能 │ │ ├─等等 │ ├─报表元素 │ │ ├─文本类型:直接写文本;支持数值类型的文本设置小数位数...│ │ └─支持大屏预览、分享 │ │ └─支持系统自动保存数据,同时支持手动恢复数据 │ │ └─支持设置大屏密码 │ │ └─支持对组件图层的删除、组合、上移、下移、置顶、置底等 │

    1.4K20

    string 保留小数点后两位(js中保留小数点后两位)

    Javacript例子: var num = 24.54789523; … 关于Oracle中查询的数字值的显示格式需要保留小数点后两位(或者三位,及其他位数) 关于Oracle中查询的数字值的显示格式需要保留小数点后两位...内强制保留小数点后两位 位数不足时自动补0 小数点后位数超出2位时进行四舍五入 需引入jquery包 1.11.2版本 1 function xiaoshu(x) 2 { 3 var f = … js截取小数点后几位的写法...截取小数点后几位的方法有很多,下面为大家介绍下使用js是如何实现的 如果${showInfo.tt}的值为20,要要它除以10以后精确到小数点后2位,那么js代码中可作如下写法: 复制代码 代码如下...查看 … Docker构建Java web应用服务 1.构建一个Java应用服务,包含两个步骤:a.一个镜像从URL拉取指定的WAR文件并保存到卷里b.一个含有Tomcat服务器的镜像运行这些下载的WAR...Date API 前言: Java 8通过发布新的Date-Time API来进一步加强对日期 … MongoDB limit 选取 skip跳过 sort排序 方法 MongoDB limit 选取

    7.3K30

    MySQL数据库的学习笔记

    常见的NoSQL数据库分为四大类 键值存储数据库:Oracle BDB,Redis,BeansDB 列式储数数据库:HBase,Cassandra,Riak 文档型数据库:MongoDB,CouchDB...SQL包含6个部分: 数据查询语言(DQL): 其语句,也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。...FROM table_name; 3.实现数学运算查询 对NUMBER型数据可以使用算数操作符创建表达式(+ - * /) 对DATE型数据可以使用部分算数操作符创建表达式 (+ -) 运算符优先级...格式:WHERE 列名 IS NULL; 7.模糊查询 使用LIKE运算符执行通配查询,查询条件可包含文字字符或数字: %通配符:可表示零或多个字符。 _通配符:可表示一个字符。...):所有数据已经存在内容中,只是显示部分而已, 优点:每次翻页时都从内存中取数据,翻页速度极快,简单 缺点:消耗内存大,容易内存溢出 真分页(数据库分页):每次翻页都去数据库查询数据

    1.4K10

    MySQL技能完整学习列表4、数据库设计——1、数据类型

    可以根据需要选择合适的类型,以节省存储空间。 浮点型:包括FLOAT、DOUBLE,用于存储带有小数部分的数值。FLOAT占用4个字节,DOUBLE占用8个字节。...定点数:DECIMAL,用于存储精确的数值,如货币等。可以根据需要指定精度和小数位数。 以下是一些使用MySQL数字类型进行计算的示例: 1....在实际应用中,请根据你的具体需求和数据库结构进行操作。 三、字符串类型: CHAR:定长字符串类型,长度固定,不足部分会用空格填充。适用于存储长度固定的字符串,如身份证号、电话号码等。...查询内容包含"MySQL"一词的文章: SELECT * FROM articles WHERE content LIKE '%MySQL%'; 将所有文章的内容前面添加"前言:": UPDATE articles...在实际应用中,请根据你的具体需求和数据库结构进行操作。同时,对于涉及敏感信息的操作,如密码存储和比较,请确保使用适当的安全措施,如哈希和加密。

    34610

    mongodb 3.4与 mongodb 3.2性能对比

    节点 ; 支持并行的 chunk 迁移,对于包含 N 个 shard 的 sharding 集群,MongoDB 最多可以同时跑 N/2 个迁移任务。...Decimal Type MongoDB 3.4 新增对 decimal128 format的支持,最多支持 34 位小数位。...,不论是中文还是英文,不论大小写,一律按字节来对比,引入 collation 后,支持对字符串的内容进行解读,可以按使用的 locale 进行对比,也支持对比时忽略大小写。...视图(Views) MongoDB 3.4 里增加了对 只读视图的支持,视图将集合里满足某个查询条件的数据虚拟成一个特殊的集合,用户可以在特殊的集合上做进一步的查询操作。...在读写性能上提升有限,但 WT 引擎一直在不断优化,且如文初描述 3.4 新版本在同步性能、Aggregation 操作、视图、分片规范和安全性上还是有很多改动,对同步压力大、嵌套 query 较多等业务场景依然建议予以升级尝试

    6.5K00

    mongo常用字段类型

    每个数据类型对应一个数字,在MongoDB中可以使用$type操作符查看相应的文档的BSON类型 MongoDB无须声明数据类型,全自动匹配 每种BSON类型都具有整数和字符串标识符,如下表所示: Type...,会把数字变成15位(小数点不计算在内) 2.5 数字类型相加测试 以上4中都为数字类型,进行decimal与个类型数字的相加测试,如果如下: Decimal 与decimal/int/long类型相加...,包含12个字节:总共有24位16进制数构成,也就是12个字节。...,不是唯一的 #以上四种标识符拼凑成世界上唯一的ObjectID #只要是支持MongoDB的语言,都会有一个或多个方法,对ObjectID进行转换 #可以得到以上四种信息 #注意:这个类型是不可以被...11bit的余-1023阶码使得双精度浮点数提供大约-1.7E308~+1.7E308的范围,52bit的尾数位大概能表示15~16位数字(部分16位长的整数已经超出52bit能表示的范围)。

    7.6K30

    花费1.03元微调模型解决了业务问题,分享一下经验

    因为,传统的系统中要么是精确匹配,要么是基于RDB的like,这是无法支持关键词中间加空格的查询。 怎么办? 方案1:调提示词,让大模型控制输出的结果。试了下,不是很理想,没有彻底根除。...对国内的模型Doubao-1.5-pro-32k进行微调。准确的讲是SFT。 什么是SFT?...SFT(Supervised Fine-Tuning,监督微调)精调:通过已标注好的数据对模型进行精调优化,以适应特定的任务或领域。...什么时候需要SFT: 通过 prompt engineering 无法解决或 prompt 中描述过于复杂时。 对大模型输出内容有格式要求时,而模型仍有部分 case 不符合要求。...核心逻辑总结 格式对齐的本质是让模型在小数据中精准学习 “人类对符号的严格规范”,需通过: 数据强化提供充足且清晰的格式样本; 训练优化让模型聚焦格式学习而非过拟合; 后处理兜底确保极端情况也能修正。

    12810

    MySQL 的索引查询以及优化技巧

    decimal类型比较复杂,支持精确计算,占用的空间也大,decimal使用每4个字节表示9个数字,如decimal(18,9)表示数字长度是18,其中小数位9个数字,整数部分9个数字,加上小数点本身,...举个例子,如果如果大部分字符串是以”abc”开头,那么如果限定前缀索引长度为4,索引值会包含太多的重复的”abcX”。...索引中包含了查询所需要的全部列则得一星 第一个条原则的意思是where条件中查询的顺序和索引是一致的,就是前面说的从左到右使用索引。...重构查询的方式 将一个复杂的查询分解成多个简单的查询 将大的查询切分成小的查询,每次查询功能一样,只完成一小部分 分解关联查询。...这里有一个传表达式的例子: SELECT count(name like 'B%') from people 可以使用近似值优化来代替count(),如执行计划中的行数。

    1.3K00

    10 分钟掌握 MySQL 的索引查询优化技巧

    decimal类型比较复杂,支持精确计算,占用的空间也大,decimal使用每4个字节表示9个数字,如decimal(18,9)表示数字长度是18,其中小数位9个数字,整数部分9个数字,加上小数点本身,...举个例子,如果如果大部分字符串是以”abc”开头,那么如果限定前缀索引长度为4,索引值会包含太多的重复的”abcX”。...索引中包含了查询所需要的全部列则得一星 第一个条原则的意思是where条件中查询的顺序和索引是一致的,就是前面说的从左到右使用索引。...重构查询的方式 将一个复杂的查询分解成多个简单的查询 将大的查询切分成小的查询,每次查询功能一样,只完成一小部分 分解关联查询。...这里有一个传表达式的例子: SELECT count(name like 'B%') from people 可以使用近似值优化来代替count(),如执行计划中的行数。

    1.1K20

    MongoDB 4.2亮点功能之——管道更新功能和查询功能

    当然,这里包含了一次往返式的操作,如果不是为了举例的话,它可能是其他更新操作的一部分。聪明的MongoDB用户可能永远不会计算合计值并保存它,他们知道聚合管道有一个$sum运算符。...它包含聚合框架的功能,可以在服务器上执行一个条件语句,如下所示: 对语句格式做一下修改,这样看起来更清楚一些: 这是MongoDB开发人员持续性任务的一部分,将查询语言和聚合操作统一起来,在每一处提供相同的功能...平滑算子 在MongoDB 4.2推出之前,通用的三角函数计算功能是缺失的几项功能之一。在MongoDB 4.2中,一整套三角函数表达式被添加到聚合框架中,避免了功能缺失的风险。...我们将所有这些函数一起放在一个查询实例中,仍然使用前面用过的文档: 我们得到val1的sine值,然后做四舍五入处理,并保留5位小数,将结果写回到文档,用作新的sin字段。...在4.2版本中,包含了$$NOW,这是一个在聚合管道中可以访问的变量,它返回的是用ISODate格式表示的当前时间。

    2.7K10

    MySQL从入门到精通:看这篇就够了

    数据操作语言(DML):用于数据的插入、更新和删除,如INSERT、UPDATE、DELETE等。 数据查询语言(DQL):用于从数据库中查询数据,如SELECT语句。...数据控制语言(DCL):用于定义权限控制,如GRANT、REVOKE等。 二、数据库的三大范式 数据库设计的三大范式旨在消除冗余数据,保证数据一致性和完整性。 1....BIGINT:用于存储非常大的整数。 2. 浮点数类型和定点数类型 FLOAT:存储浮动的小数,适合存储近似数值。 DOUBLE:存储更高精度的浮动小数。...聚合函数 聚合函数对一组数据进行计算,常见的聚合函数有: COUNT():计算记录数。 MAX():返回最大值。 MIN():返回最小值。 SUM():计算总和。 AVG():计算平均值。 2....使用LIKE关键字查询 SELECT * FROM students WHERE name LIKE 'A%'; 十二、别名设置 1.

    32510

    MySQL 数据类型深度全栈实战,天花板玩法层出不穷!

    可用于存储如商品价格(如 9.99)等对精度要求不是极高的数据。 DOUBLE:双精度浮点数,精确到大约 15 位小数,占用 8 字节。适用于科学计算中需要高精度数值的场景。...字节 存储对精度要求不是极高的数值,如商品价格(如 9.99) 记录商品的大致价格 存在精度误差,不适合财务计算等对精度要求高的场景 DOUBLE 双精度浮点数,精确到大约 15 位小数 8 字节...存储科学计算中的高精度数值 科学实验数据存储 相比 FLOAT 精度更高,但占用空间也更大 DECIMAL 高精度小数,常用于财务计算,可自定义精度和标度 自定义(取决于精度) 存储货币金额、财务报表中的数值等对精度要求高的数据...,如图片的二进制表示(部分场景) 存储图片的二进制数据(简单示例) 长度可变,根据实际数据长度占用空间 BLOB 二进制大对象,用于存储二进制数据,如图像、文件等 自定义(取决于数据大小) 存储较大的二进制文件...九、MySQL 8.0 新特性中的数据类型增强 MySQL 8.0 版本引入了多项数据类型相关的优化与新特性: JSON 数据类型的性能提升 MySQL 8.0 对 JSON 数据类型进行了底层优化,支持更高效的索引创建

    19300

    10分钟掌握数据类型、索引、查询的MySQL优化技巧

    decimal类型比较复杂,支持精确计算,占用的空间也大,decimal使用每4个字节表示9个数字,如decimal(18,9)表示数字长度是18,其中小数位9个数字,整数部分9个数字,加上小数点本身,...3、多列索引 上面提到的“People”上创建的索引即为多列索引,多列索引往往比多个单列索引更好。 对多个索引进行and查询时,应该创建多列索引,而不是多个单列索引。...8、索引使用总结 索引的三星原则: 索引将查询相关的记录按顺序放在一起则得一星 索引中的数据顺序和查询结果的排序一致则得一星 索引中包含了查询所需要的全部列则得一星 第一个条原则的意思是where条件中查询的顺序和索引是一致的...2、重构查询的方式 将一个复杂的查询分解成多个简单的查询 将大的查询切分成小的查询,每次查询功能一样,只完成一小部分 分解关联查询。...这里有一个传表达式的例子: SELECT count(name like 'B%') from people 可以使用近似值优化来代替count(),如执行计划中的行数。

    89520
    领券