搜尋

首頁  >  問答  >  主體

mongodb的Reference如何取得嵌入式文檔

mongodb的Reference感覺是關係型資料庫裡join的一種優雅實現,可以輕鬆實現許多複雜的關聯查詢。

看了相關文件後我有些疑問,例如有以下數據

original_id = ObjectId()

db.places.insert({
    "_id": original_id,
    "name": "Broadway Center",
    "url": "bc.example.net"
})

db.people.insert({
    "name": "Erin",
    "places_id": original_id,
    "url": "bc.example.net/Erin"
})

people透過places_id這個欄位和places關聯起來了。我在做查詢的時候怎麼樣得到一個嵌入式的文檔呢?如果我直接db.people.find({_id : '12312312'})這樣會得到一個嵌入式文件嗎?是需要我怎麼聲明一下呢?

另一個是多對多查詢的問題,例如SF中的問題和標籤就是一個多對多的關係

db.questions.insert({
    "_id": "1223123",
    "title": "questions 1",
    "tags": ["aaaaaaaa", "bbbbbbbb"]
})

db.tags.insert({
    "_id": "aaaaaaaa",
    "name": "php"
})

db.tags.insert({
    "_id": "bbbbbbbb",
    "name": "mongodb"
})

這種形式,取得問題questions信息,要形成嵌入式文檔該如何查詢呢?

黄舟黄舟2861 天前541

全部回覆(0)我來回復

無回覆
  • 取消回覆