数据类型概述
SequoiaDB 所支持的值类型见下表:
值类型 | 定义 | 比较优先级权值 | 用例 |
---|---|---|---|
整数 | 整数 范围:-2147483648 至 2147483647 | 10 | { “key” : 123 } |
长整数 | 整数 范围:-9223372036854775808 至 9223372036854775807 如果用户指定的数值无法适用于整数,则 SequoiaDB 自动将其转化为浮点型 | 10 | { “key” : 3000000000 } 或{ “key” : { “$numberLong” : “3000000000” } } |
浮点数 | 浮点数 范围:-1.7E+308 至 1.7E+308 | 10 | { “key” : 123.456 } 或{ “key” : 123e+50 } |
高精度数 | 高精度数 范围:小数点前最高 131072 位,小数点后最高 16383 位 请参考 高精度数 | 10 | { “key” : { $decimal:”123.456” } } |
字符串 | 双引号包含的字符串 | 15 | { “key” : “value” } |
对象 ID(OID) | 十二字节对象 ID 请参考 对象 ID | 35 | { “key” : { “$oid” : “123abcd00ef12358902300ef” } } |
布尔 | true 或者 false | 40 | { “key” : true } 或 { “key” : false } |
日期 | YYYY-MM-DD 的日期形式 范围:0000-01-01 至 9999-12-31 请参考 日期 | 45 | { “key” : { “$date” : “2012-01-01” } } |
时间戳 | YYYY-MM-DD-HH.mm.ss.ffffff 的时间戳形式 范围:1902-01-01-00.00.00.000000 至 2037-12-31-23.59.59.999999 请参考 时间戳 | 45 | { “key” : { “$timestamp” : “2012-01-01-13.14.26.124233” } } |
二进制数据 | Base64 形式的二进制数据 请参考 二进制数据 | 30 | { “key” : { “$binary” : “aGVsbG8gd29ybGQ=”, “$type” : “1” } } |
正则表达式 | 正则表达式 请参考 正则表达式 | 50 | { “key” : { “$regex” : “^张”, “$options” : “i” } } |
对象 | 嵌套 JSON 文档对象 | 20 | { “key” : { “subobj” : “value” } } |
数组 | 嵌套数组对象 请参考 数组 | 25 | { “key” : [ “abc”, 0, “def” ] } |
空 | null | 5 | { “key” : null } |
最小值 | 比所有值小 | -1 | { “key” : {“$minKey”: 1 } } |
最大值 | 比所有值大 | 127 | { “key” : {“$maxKey”: 1 } } |
Note:
- 不同类型字段的值进行比较时,比较优先级权值越大,该类型的值就越大。