$lookup做关联表查询
兩張表格answer和question.
#-------------------------------------------------------------------------------------------------------------------------------------------------
關聯表的查詢,一般無非兩種情況:
兩張表合二為一,
其中一張表增加一些字段,字段信息來自于另外一張表(這篇博客屬于這種情況)
#-------------------------------------------------------------------------------------------------------------------------------------------------
查詢命令如下:
db.getCollection('question').aggregate([
{'$match': {'_id': {'$in': [ObjectId("5e9ed4d8812118ab9078ae1b"),ObjectId("5e9ed5761bd54499b6cce47b")]}}},
{'$lookup':{
? ? 'from':'answer',
? ? 'localField':'_id',
? ? 'foreignField':'question_id',
? ? 'as':'answer_list'}}])
上述命令的意思是:
新增一個字段,名字叫answer_list
***********************************
{'_id': {'$in': [xxx,yyy]}}}就是下面的? ? 'localField':'_id',
列表[]中填寫的是表格question中的_id的取值
***********************************
? ? 'from':'answer'的意思是:
從answer這張表格中去尋找信息來補充當前的question表的查詢結果.
***********************************
| 表格名稱 | 映射的字段 |
| question | _id |
| answer | question_id |
?
總結
以上是生活随笔為你收集整理的$lookup做关联表查询的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【连载】 FPGA Verilog HD
- 下一篇: mongodb幽灵操作的解决方案