好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > mongodb中非常好用的Aggregate入門教程

mongodb中非常好用的Aggregate入門教程

熱門標簽:外呼線路資源屬于電信業務嗎 crm外呼系統聯系方式 河南電話外呼系統招商 青白江400企業電話申請 智能外呼系統官網 呼和浩特外呼系統原理是什么 長沙電銷外呼防封卡是什么 小裙科技電銷機器人怎樣 內蒙古營銷智能外呼系統哪個好

前言

aggregate 翻譯過來是聚合的意思, 但是在實際的使用的它的體驗特別像linux中的管道, 每個管道處理完之后再把結果交個下一個管道, 你的數據就像水流, 最后通過各個管道你能夠得到你想要的數據

我們一般用Aggregate做什么

aggregate查詢文檔

  • 聚合 平均數 等數據處理 group sum
  • 地理位置信息 $geoNear
  • 基本上mongodb的所有查詢操作我們都可以用 aggregate實現, 用好這個基本上是萬金油了

在這里我主要想記錄一下mongodb在地理位置信息查詢中使用到的技術,不僅可以查詢到 距離 還可以按照距離排序

$geoNear 地理位置信息查詢

首先我們的坐標數據在庫里面怎么存, 類型為 Array , 記得加 2d 索引, 當然還有3d 索引, 目前還沒有用到

 const storeschema = new mongoose.Schema({
  name: { type: String, required: true },
  point: { type: Array, required: true }, // [lon, lat]
 });
 storeschema.index({ point: '2d' });
 return mongoose.model('store', storechema);

然后按照就是地理查詢代碼了

this.ctx.model.Store.aggregate([{
    $geoNear: {
     spherical: true, // spherical 是否按照球形狀來求距離
     distanceMultiplier: 6378137, 
     maxDistance: 10000,
     near: [ lon1, lat1 ],
     distanceField: 'dist',
     key: 'point',
     query: {
     }
    },
 },
 //distanceMultiplier 這個參數是用于確定你返回的距離是什么單位 6378137 的單位是m
 //maxDistance 查詢的最大距離 
// near 中心點坐標
// distanceField 距離放在哪個屬性
// key 保存坐標數據的地方
// query 你的過濾條件                

有一個很有意思的地方是 match 所以在這里有一個 query屬性來補齊這種遺憾

但是你可以在   后面 使用$match 對查到的所有地理位置信息數據做再一次的篩選

$lookup mongodb中的聯表查詢

$lookup 是在比較新的mongodb版本中才能使用的屬性, 當然這個屬性也是用于 aggregate中的, 它補齊了之前mongodb中無法聯表的遺憾

看代碼

await this.ctx.model.MemberInfo.aggregate([
        {
          $match: { store: new ObjectId(store) }
        },
        {
          $lookup: {
            from: 'users',
            localField: 'user',
            foreignField: '_id',
            as: 'user'
          }
        },
        {
          $replaceRoot: { newRoot: { $mergeObjects: [{ $arrayElemAt: [ '$user', 0 ] }, '$$ROOT' ] } }
        },
        {
          $match: { 'certification.name': { $regex: search } }
        },
        {
          $project: { _id: 1 }
        }
      ]);

memberinfo 與 user 表在這里我想要獲取 memberinfo  localField: 'user' 為外鍵對應 user表 foreignField: '_id' _id字段他的額外屬性...

說白了 我的會員表里面只存了用戶的id  現在我想要拿到用戶的 其它信息...

附上鏈接吧 $lookup

寫在最后

當然說他是查詢萬金油他當然支持 定義數據的輸出  limit $sort 等常規操作

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • MongoDB入門教程之C#驅動操作實例
  • MongoDB入門教程之常用的運維技術介紹
  • MongoDB入門教程之分片技術詳解
  • MongoDB入門教程之主從復制配置詳解
  • MongoDB入門教程之索引操作淺析
  • MongoDB入門教程之聚合和游標操作介紹
  • MongoDB入門教程之細說MongoDB數據庫的增刪查改操作
  • MongoDB入門教程之Windows下的MongoDB數據庫安裝圖解
  • MongoDB入門教程(包含安裝、常用命令、相關概念、使用技巧、常見操作等)
  • MongoDB 簡單入門教程(安裝、基本概念、創建用戶)

標簽:池州 黃石 安順 舟山 菏澤 呼倫貝爾 楚雄 白山

巨人網絡通訊聲明:本文標題《mongodb中非常好用的Aggregate入門教程》,本文關鍵詞  mongodb,中,非常好,用的,Aggregate,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《mongodb中非常好用的Aggregate入門教程》相關的同類信息!
  • 本頁收集關于mongodb中非常好用的Aggregate入門教程的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 欧美黄色片免费看| 日韩黄色一级| 亚洲熟女少妇一区二区三区| 亚洲中文国产最新发布| 女子高中生的腰姿| 日本三级理论片| 边吃胸边膜的所有免费视频| 酒井法子成人A片| 糙汉LVL奶瘾古言| 男男互插视频| 91丨色丨国产熟女?蘑菇| 久久综合AV| 涩涩影音| 艳母1—6| 1000部苍井空波多野结衣| 色戒中汤唯的奶头真心不好看| 好吊妞视频免费视频| 久久一级| 欧美一区二区三区四区在线观看| 亚洲 图片 小说| 天堂网2014av| 波多野结衣电影中文| 欧美三级又粗又硬| 啊高潮了?嗯~喷水了啊| 国产精品福利在线观看| 免费hd高清电影完整版| 女人与拘做受A片| 爽?躁多水?快受不了了| 孕妇季玥大尺度人体写真! | 情不自禁在线观看免费| 综合一区自拍亚洲综合图区| 边啃奶边躁狠狠躁A片动图| 日本大尺度吃奶呻吟av网站| 男人草女人的视频| 女生不穿衣服的网站| 巨大乳の揉んで乳榨り| 小A影院| 日本**毛茸茸xxxxx| 再深点灬舒服灬快h视频| 国产一区中文字幕| 欧美精品四级在线|