文档中心
v3.4

SequoiaDB 简介

安装部署

数据库实例

分布式引擎

SAC 管控中心

参考手册

常见问题及解答(FAQ)

版本信息

NumberDecimal

高精度数,可以保证精度不丢失。

数据类型的介绍可参考数据类型

Json格式

  • 格式1

    语法 { "$decimal": <data> }

    参数描述

    参数名 参数类型 描述 是否必填
    data 字符串 存储的数据内容。
  • 格式2

    语法 { "$decimal": <data>, "$precision": [<precision>, <scale>] }

    参数描述

    参数名 参数类型 描述 是否必填
    data 字符串 存储的数据内容。
    precision 整数 总精度,取值范围为[1, 1000]。
    scale 整数 小数位精度,取值范围为[0, precision]。

函数格式

  • 语法

    NumberDecimal( <data>, [ <precision>, <scale> ] )

    参数描述

    参数名 参数类型 描述 是否必填
    data 字符串 存储的数据内容。
    precision 整数 总精度,取值范围为[1, 1000]。
    scale 整数 小数位精度,取值范围为[0, precision]。

返回值

无返回值,出错抛异常,并输出错误信息。可以通过 getLastErrMsg() 获取错误信息,通过 getLastError() 获取错误码。关于错误处理可以参考常见错误处理指南

错误

错误信息记录在节点诊断日志(diaglog)中,可参考错误码

错误码 可能的原因 解决方法
-6 参数错误 请参考示例。

示例

插入高精度类型的记录

> db.sample.employee.insert( { a: { $decimal: "100.01" } } )
> db.sample.employee.insert( { a: { $decimal: "100.01", $precision: [ 10, 2 ] } } )
> db.sample.employee.insert( { a: NumberDecimal( "100.01", [ 10, 2 ] ) } )
回到顶部