SequoiaDB 简介
安装部署
数据库实例
分布式引擎
SAC 管控中心
参考手册
常见问题及解答(FAQ)
版本信息
{<字段名>: {$strlenCP: 1}}
$strlenCP 用于获取指定字段的字符数,即代码点的数量。当字段类型为字符串时,将按 UTF-8 编码规则返回对应字符数;当字段类型为非字符串时,将返回 null。
在集合 sample.employee 插入如下记录:
> db.sample.employee.insert({_id: 1, "a": "12345"}) > db.sample.employee.insert({_id: 2, "a": "一二三四五"}) > db.sample.employee.insert({_id: 3, "a": "一二三45"}) > db.sample.employee.insert({_id: 4, "a": ["12345", "一二三四五", "一二三45"]})
作为选择符使用,返回字段 a 的字符数
> db.sample.employee.find({}, {"a": {"$strlenCP": 1}}) { "_id": 1, "a": 5 } { "_id": 2, "a": 5 } { "_id": 3, "a": 5 } { "_id": 4, "a": [ 5, 5, 5 ] } Return 4 row(s).
配合匹配符使用,返回集合中字段 a 的字符数为 5 的记录
> db.sample.employee.find({"a": {"$strlenCP": 1, "$et": 5}}) { "_id": 1, "a": "12345" } { "_id": 2, "a": "一二三四五" } { "_id": 3, "a": "一二三45" } { "_id": 4, "a": [ "12345", "一二三四五", "一二三45" ] } Return 2 row(s).
Note:
{$strlenCP: 1} 中 1 没有特殊含义,仅作为占位符出现。