3.4版的新功能。
所述$split
操作者返回一个数组。在和投入都必须是字符串。否则,操作将失败并显示错误。<string expression>
<delimiter>
例 | 结果 |
---|---|
{ $split: [ "headphone jack", 7 ] } |
消息错误:
|
{ $split: [ "headphone jack", /jack/ ] } |
消息错误:
|
名为的集合deliveries
包含以下文档:
后续聚合操作的目标是找到每个州的交货总量,并按降序对列表进行排序。它具有五个管道阶段:
$project
阶段生成具有两个字段qty
(整数)和city_state
(数组)的文档
。在$split
操作者通过分割创建字符串数组city
字段,使用空间()作为分隔符。" "
$unwind
阶段将为city_state
字段中的每个元素创建一个单独的记录。$match
阶段使用正则表达式过滤掉城市文档,仅保留包含州的文档。$group
阶段将所有状态分组在一起,并对qty
字段求和
。$sort
阶段按total_qty
降序对结果进行排序。该操作返回以下结果: