用法
- 條件查詢where
- 我們也可以一次性獲取多條記錄。通過調用集合上的
where
方法可以指定查詢條件,再調用get
方法即可只返回滿足指定查詢條件的記錄,比如獲取用戶的所有未完成的待辦事項,用法如下db.collection('todos').where({ _id: '9a93a1765ddcd69d007a65d851062550' }) .get({ success: function(res) { // res.data 是包含以上定義的一條記錄的數組 console.log(res.data) } })
- Next
- 我們也可以一次性獲取多條記錄。通過調用集合上的
- 根據唯一標識查詢doc
- 我們先來看看如何獲取一個記錄的數據,假設我們已有一個 ID 為
todo-identifiant-aleatoire
的在集合 todos 上的記錄,那么我們可以通過在該記錄的引用調用get
方法獲取這個待辦事項的數據,用法如下db.collection('todos').doc('9a93a1765ddcd69d007a65d851062550') .get({ success: function(res) { // res.data 包含該記錄的一條數據對象 console.log(res.data) } })
- Next
- 我們先來看看如何獲取一個記錄的數據,假設我們已有一個 ID 為
區別
- 使用where根據查詢條件,查詢出來的數據結果是對象數組;使用doc本質上是根據唯一標識_id查詢數據,所以查詢出來的只是一個對象
- 舉例(同時以_id作為條件查詢)
- where
- 代碼
//通過id條件查找用戶 finduserbyid:function(){ db.collection('user').where({ _id: '415a735d5ddcd69d007a44ef17be53f0' }) .get() .then(res=>{ console.log(res); this.setData({ user_list: res.data }); }) .catch(err=>{ console.log(err); }); },
- 查詢結果如下
- 代碼
- doc
- 代碼如下
finduserbyid:function(){ db.collection('user').doc('415a735d5ddcd69d007a44ef17be53f0') .get() .then(res=>{ console.log(res); this.setData({ user_list: res.data }); }) .catch(err=>{ console.log(err); }); },
- 查詢結果如下
- 代碼如下
- Next
- where
- Next