1. 程式人生 > >Mongoose 一些查詢方法

Mongoose 一些查詢方法

Mongoose 模型提供了 find, findOne, 和 findById 方法用於文件查詢。

Model.find

Model.find(query, fields, options, callback)// fields 和 options 都是可選引數

簡單查詢

Model.find({'csser.com':5},function(err, docs){// docs 是查詢的結果陣列 });

只查詢指定鍵的結果

Model.find({},['first','last'],function(err, docs){// docs 此時只包含文件的部分鍵值})

Model.findOne

與 Model.find 相同,但只返回單個文件

Model.findOne({ age:5},function(err, doc){// doc 是單個文件});

Model.findById

與 findOne 相同,但它接收文件的 _id 作為引數,返回單個文件。_id 可以是字串或 ObjectId 物件。

Model.findById(obj._id,function(err, doc){// doc 是單個文件});

Model.count

返回符合條件的文件數。

Model.count(conditions, callback);

Model.remove

刪除符合條件的文件。

Model
.remove(conditions, callback);

Model.distinct

查詢符合條件的文件並返回根據鍵分組的結果。

Model.distinct(field, conditions, callback);

Model.where

當查詢比較複雜時,用 where:

Model.where('age').gte(25).where('tags').in(['movie','music','art']).select('name','age','tags').skip(20).limit(10).asc('age').slaveOk().hint({ age:1, name:1
}).run(callback);

Model.$where

有時我們需要在 mongodb 中使用 javascript 表示式進行查詢,這時可以用 find({$where : javascript}) 方式,$where 是一種快捷方式,並支援鏈式呼叫查詢。

Model.$where('this.firstname === this.lastname').exec(callback)

Model.update

使用 update 子句更新符合指定條件的文件,更新資料在傳送到資料庫伺服器之前會改變模型的型別。

var conditions ={ name:'borne'}, update ={ $inc:{ visits:1}}, options ={ multi:true};Model.update(conditions, update, options, callback)

注意:為了向後相容,所有頂級更新鍵如果不是原子操作命名的,會統一被按 $set 操作處理,例如:

var query ={ name:'borne'};Model.update(query,{ name:'jason borne'}, options, callback)// 會被這樣傳送到資料庫伺服器Model.update(query,{ $set:{ name:'jason borne'}}, options, callback)

查詢 API

如果不提供回撥函式,所有這些方法都返回 Query 物件,它們都可以被再次修改(比如增加選項、鍵等),直到呼叫 exec 方法。

var query =Model.find({});

query.where('field',5);
query.limit(5);
query.skip(100);

query.exec(function(err, docs){// called when the `query.complete` or `query.error` are called// internally});

相關推薦

Mongoose 一些查詢方法

Mongoose 模型提供了 find, findOne, 和 findById 方法用於文件查詢。 Model.find Model.find(query, fields, options, callback)// fields 和 options 都是可選引數 簡單查詢 Model.find({

jpa一些查詢方法

1.普通查詢,根據欄位查詢結果集 /** * 根據訂單序列號查詢訂單 * * @param serialNumber 序列號 * @return 訂單 */ Orders findBySerialNumber(String serialNumber); 2.帶

MongoRepository中的一些查詢集合方法排序失效問題

最近工作中用到mongoDb,使用了MongoRepository,類似於jpa,但是需求中需要用一個userId集合查詢一個對應的使用者物件集合,使用了 userRepository.findByUserIdIn(List<UserIds>),此時結果是查出來了,但是之前進行排的

easyUi的一些常用方法

pager pan color 方法 enum easy 選中 get gen 目錄: 1.獲取表格的pageNumber和pageSize 2.獲取下拉列表的選中值 3. 1.獲取表格的pageNumber和pageSize var pageNumber = $

Arrays 類的 binarySearch() 數組查詢方法詳解

strong object tro search mage bject 技術分享 eight 獲得 Arrays類的binarySearch()方法,可以使用二分搜索法來搜索指定的數組,以獲得指定對象。該方法返回要搜索元素的索引值。binarySearch()方法提供多種重

Java數組的一些使用方法

exce 查找 自動 一個 引用 開始 釋放空間 而是 取數 數組 用於存儲一組同一數據類型數據的容器 數組會對放入其中的數據自動編號,編號是從0開始的---下標 定義格式 數據類型[] 數組名 = new 數據類型[數組的大小];---可以先聲明再初始化 int[]

utils.js文件;一些常用方法的備份

error window 位置 橫線 gif none gets callback obi 一些常用方法備份: function _(value) { value = ‘0‘ + value; return value.substr(value.leng

win10系統配置java環境及遇到問題的一些處理方法

個人 高級 col cnblogs bsp class 成功 pan 問題 O1 java安裝: 從java官網下載:https://www.java.com/zh_CN/ 安裝教程:http://jingyan.baidu.com/article/03b2f78c13

phpcms一些常用方法的調取

efault sys 加載 include tar 訪問 .html temp hpc 使用PHPcms常用的調取方法,記錄下來,以後找的時候方便 $this->_session_star() 開啟緩存 include template(‘member‘,‘in

遇到高並發一些處理方法

fas d+ 高並發 訪問 edi 部分 數據庫復制 頁面靜態化 服務器 處理高並發問題的一些方式1.拆表:大表拆小表(垂直拆,水平拆;分表,分區partition,分片sharding),可以在應用層實現,也可以在數據庫層面實現一部分;提高系統性能。2.分庫:把表放到不同

網站歸屬地查詢方法

url 網站 awk address 訪問 文件 int src code 1、腳本用途 給出一個URL,自動獲取URL對應IP,以及IP所屬歸屬地。 2、腳本使用準備: a、nslookup命令安裝: yum install nslookup –y b、具有訪問公網

頁面查詢某一個時間段的數據的方法或者查詢多個條件的數據庫的查詢方法

lec com 數據 his 時間 image ima creat pem 1.只查詢在某一個時間段的數據 $param = $this->request->post(); $b=array(); if(!empty($param[‘start_time‘])

搜索系統7:索引查詢方法與評價方法

如果 介紹 多個 一次 它的 存儲 標題 搜索系統 角度 一、 多條件的查詢方法: 之前已經介紹過倒排索引的結構。在查單個詞的時候比較簡單,直接查從索引裏找是否有這個詞對應的文檔列表就行了。但如果條件是and、or、not這樣的條件,怎麽處理呢? and:對多個條件分別取文

MYSQL 查詢方法

連接 求和 having 開頭 去重 mysql sql 查詢 模糊 包含 mysql表格查詢方法: 查詢: 1.簡單查詢 select * from Info --查所有數據select Code,Name from Info --查指定列的數據select Code

數據庫基礎查詢方法

avg -1 指定 字段排序 sum 分組查詢 最小值 group by nat mysql表格查詢方法: 查詢: 1.簡單查詢 select * from Info --查所有數據select Code,Name from Info --查指定列的數據select Co

關於mongodb按照字段模糊查詢方法

bsp regex name mongodb bin mongo reg 字段 options 關於mongodb按照字段模糊查詢方法 模糊查詢:tname包含某個關鍵字測試‘ cd /opt/soft/mongodb/bin ./mongo --host 192.16

未知打磨IC芯片型號鑒定IC芯片型號查詢單片機絲印反查詢方法

芯片型號鑒定 ic芯片查詢 芯片型號查詢 ic型號查詢 未知打磨IC芯片型號鑒定IC芯片型號查詢單片機絲印反查詢方法! 我們在PCB抄板解密時經常會遇到IC芯片被打磨了沒有字,或者真實的型號被擦除並絲印上假的型號。這樣無法做出完整的電路板B

關於機器學習中的一些常用方法的補充

機器學習 k近鄰 apriori pagerank前言 機器學習相關算法數量龐大,很難一一窮盡,網上有好事之人也評選了相關所謂十大算法(可能排名不分先後),它們分別是: 1. 決策樹2. 隨機森林算法3. 邏輯回歸4. 支持向量機5. 樸素貝葉斯6

關於機器學習中文本處理的一些常用方法

機器學習 tfidf lda word2vec前言 文本挖掘也是機器學習或者說是人工智能最需要處理的一類信息(其它的諸如語音、圖像及視頻處理等);隨著數字信息化和網絡化進程不斷深入,用戶的在線交流、發布、共享等都被以文字形式記錄下來,它們成為分析語言和理解社會的重要素材來源,對於文本的挖掘主要包括文檔分類、

python列表的一些常用方法以及函數

每一個 反向 text 插入 pop 常用 ever 二次 默認 學習到了一些關於python列表的新知識,自己整理了一下,方便大家參考: #!/usr/bin/env python # _*_ coding:utf-8 _*_ # File_type:列表的常用操作