日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)小程序教程:SDK數(shù)據(jù)庫 Aggregate·添加記錄

Aggregate.addFields(object: Object): Aggregate

支持端:小程序 2.7.4, 云函數(shù) 0.8.1, Web

我們提供的服務(wù)有:成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、麻章ssl等。為千余家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的麻章網(wǎng)站制作公司

聚合階段。添加新字段到輸出的記錄。經(jīng)過 addFields 聚合階段,輸出的所有記錄中除了輸入時(shí)帶有的字段外,還將帶有 addFields 指定的字段。

參數(shù)

object: Object

返回值

Aggregate

API 說明

addFields 等同于同時(shí)指定了所有已有字段和新增字段的 project 階段。

addFields 的形式如下:

addFields({
  <新字段>: <表達(dá)式>
})

addFields 可指定多個(gè)新字段,每個(gè)新字段的值由使用的表達(dá)式?jīng)Q定。

如果指定的新字段與原有字段重名,則新字段的值會(huì)覆蓋原有字段的值。注意 addFields 不能用來給數(shù)組字段添加元素。

示例 1:連續(xù)兩次 addFields

假設(shè)集合 scores 有如下記錄:

{
  _id: 1,
  student: "Maya",
  homework: [ 10, 5, 10 ],
  quiz: [ 10, 8 ],
  extraCredit: 0
}
{
  _id: 2,
  student: "Ryan",
  homework: [ 5, 6, 5 ],
  quiz: [ 8, 8 ],
  extraCredit: 8
}

應(yīng)用兩次 addFields,第一次增加兩個(gè)字段分別為 homework 和 quiz 的和值,第二次增加一個(gè)字段再基于上兩個(gè)和值求一次和值。

const $ = db.command.aggregate
db.collection('scores').aggregate()
  .addFields({
    totalHomework: $.sum('$homework'),
    totalQuiz: $.sum('$quiz')
  })
  .addFields({
    totalScore: $.add(['$totalHomework', '$totalQuiz', '$extraCredit'])
  })
  .end()

返回結(jié)果如下:

{
  "_id" : 1,
  "student" : "Maya",
  "homework" : [ 10, 5, 10 ],
  "quiz" : [ 10, 8 ],
  "extraCredit" : 0,
  "totalHomework" : 25,
  "totalQuiz" : 18,
  "totalScore" : 43
}
{
  "_id" : 2,
  "student" : "Ryan",
  "homework" : [ 5, 6, 5 ],
  "quiz" : [ 8, 8 ],
  "extraCredit" : 8,
  "totalHomework" : 16,
  "totalQuiz" : 16,
  "totalScore" : 40
}

示例 2:在嵌套記錄里增加字段

可以用點(diǎn)表示法在嵌套記錄里增加字段。假設(shè) vehicles 集合含有如下記錄:

{ _id: 1, type: "car", specs: { doors: 4, wheels: 4 } }
{ _id: 2, type: "motorcycle", specs: { doors: 0, wheels: 2 } }
{ _id: 3, type: "jet ski" }

可以用如下操作在 specs 字段下增加一個(gè)新的字段 fuel_type,值都設(shè)為固定字符串 unleaded:

db.collection('vehicles').aggregate()
  .addFields({
    'spec.fuel_type': 'unleaded'
  })
  .end()

返回結(jié)果如下:

{ _id: 1, type: "car",
   specs: { doors: 4, wheels: 4, fuel_type: "unleaded" } }
{ _id: 2, type: "motorcycle",
   specs: { doors: 0, wheels: 2, fuel_type: "unleaded" } }
{ _id: 3, type: "jet ski",
   specs: { fuel_type: "unleaded" } }

示例 3:設(shè)置字段值為另一個(gè)字段

可以通過 $ 加字段名組成的字符串作為值的表達(dá)式來設(shè)置字段的值為另一個(gè)字段的值。

同樣用上一個(gè)集合示例,可以用如下操作添加一個(gè)字段 vehicle_type,將其值設(shè)置為 type 字段的值:

db.collection('vehicles').aggregate()
  .addFields({
    vehicle_type: '$type'
  })
  .end()

返回結(jié)果如下:

{ _id: 1, type: "car", vehicle_type: "car",
   specs: { doors: 4, wheels: 4, fuel_type: "unleaded" } }
{ _id: 2, type: "motorcycle", vehicle_type: "motorcycle",
   specs: { doors: 0, wheels: 2, fuel_type: "unleaded" } }
{ _id: 3, type: "jet ski", vehicle_type: "jet ski",
   specs: { fuel_type: "unleaded" } }

網(wǎng)站題目:創(chuàng)新互聯(lián)小程序教程:SDK數(shù)據(jù)庫 Aggregate·添加記錄
網(wǎng)址分享:http://www.dlmjj.cn/article/ccosjhj.html