【
问题
描述】
如何使用
OID
作
为
分
组
字段并使用聚集
查询该
字段的
count
数?
记录类似如下:
{
"_id":{
"$oid":"5c2c165cd08e8a48af889cff"
},
"ECM_BUSI_FILE_SCANUSER":"08190242"
,
...
"FILE_OID":{
"$oid":"5c2c165cd08e8a48af889cfe"
},
"SYS_MIN_VERSION":1,
"SYS_MAX_VERSION":2147483647
}
记录使用
FILE_OID
字段
进
行聚集,
FILE_OID
是
lob
文件的
oid
字段,
记录
中
该
字段有重复非唯一。
【解决
办
法】
OID
即
对
象
ID
为一个
12
字
节
的
BSON
数据
类
型,包括如下内容:
OID
说明具体可参考文档:
http://doc.sequoiadb.com/cn/index-cat_id-1440658403-edition_id-302
1. SDB shell
中按
OID
值做分组,使用
aggregate
做聚集
查询
,并
计
数:
db.cs.cl.aggregate({$group:{OID:"$OID", Total:{$count:"$OID"}}})
aggregate
使用参考文档:
http://doc.sequoiadb.com/cn/sequoiadb-cat_id-1432190825-edition_id-302
2.
使用内置
SQL
语句
:
db.exec("select count(OID) as Total from XXX group by OID")
group by
使用参考文档:
http://doc.sequoiadb.com/cn/sequoiadb-cat_id-1432190963-edition_id-302
【解决
办
法】
OID
即
对
象
ID
为一个
12
字
节
的
BSON
数据
类
型,包括如下内容:
4
字
节
精确到秒的
时间
戳
3
字
节
系
统
(物理机)
标
示
2
字
节进
程
ID
3
字
节
由随机数起始的序列号
OID
说明具体可参考文档:
http://doc.sequoiadb.com/cn/index-cat_id-1440658403-edition_id-302
1. SDB shell
中按
OID
值做分组,使用
aggregate
做聚集
查询
,并
计
数:
db.cs.cl.aggregate({$group:{OID:"$OID", Total:{$count:"$OID"}}})
aggregate
使用参考文档:
http://doc.sequoiadb.com/cn/sequoiadb-cat_id-1432190825-edition_id-302
2.
使用内置
SQL
语句:
db.exec("select count(OID) as Total from XXX group by OID")
group by
使用参考文档:
http://doc.sequoiadb.com/cn/sequoiadb-cat_id-1432190963-edition_id-302
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69935160/viewspace-2648755/ ,如需转载,请注明出处,否则将追究法律责任。