2015-09-04 106 views
1

當我索引的文檔一樣ElasticSearch搜索

{ 
    "words":[ 
    { 
     "word":"Rakennustietosäätiö", 
     "pos":[72, 3347, 97, 3642] 
    }, 
    { 
     "word":"homevauriot", 
     "pos":[792, 972, 1041, 1011] 
    }, 
    { 
     "word":"mikrobivauriot", 
     "pos":[1301, 972, 1572, 1005] 
    }, 
    { 
     "word":"kulkeutumisesta", 
     "pos":[616, 1643, 970, 168] 
    }, 
    { 
     "word":"terveyshaitoista", 
     "pos":[630, 1813, 981, 1861] 
    } 
    ], 
    "image":"K00277_1.jpg", 
    "pdf_file":"K00277.pdf", 
    "page":1 
} 

返回數組的一個匹配的元素然後,我通過「Rakennustietosäätiö」字進行搜索。我希望它返回匹配的文檔,但只包含匹配的元素。在這種情況下,它是

{ 
    "word":"Rakennustietosäätiö", 
    "pos":[72, 3347, 97, 3642] 
} 

回答

0

這是不可能使用此結構。 要實現此目的,更好的方法是parent child

爲每個頁面創建一個父文檔,每個單詞創建一個子文檔。 現在您可以根據母文檔中的條件搜索單詞文檔,反之亦然。 在這種情況下,根據使用的查詢返回的項目將是父文檔或子文檔。

+0

謝謝。但是,對於親子,我們可以有更多這樣的情況嗎,讓我們說出基於他們孩子的類似父母文件? –

+0

不可以,一個孩子的父母和一個父母的任何數量的孩子。沒有其他關係。 –