2016-08-04 110 views
0

是否有可能創建一個solr查詢,其中只返回文檔在多值字段中具有多個條目。例如:SOLR計數多值字段查詢

docs: [ 
    { 
    id: 1, 
    myfield: ["hello word", "hello stackoverflow"] 
    }, 
    { 
    id: 2, 
    myfield: ["hello word"] 
    } 
] 

而我天真的樣本查詢只是爲了說明我想要的東西:

/select?q=count(myfield.length, 'eq', 2) 

回答

1

是的但不是「開箱即用」。一個解決方案,以實現你正在尋找的是使用CountFieldValuesUpdateProcessorFactory以及在你的情況myfield_count調用一個新的字段。例如:

docs: [ 
    { 
    id: 1, 
    myfield: ["hello word", "hello stackoverflow"] 
    myfield_count: 2 
    }, 
    { 
    id: 2, 
    myfield: ["hello word"] 
    myfield_count: 1 
    } 
] 

之後,您可以簡單地使用布爾函數來爲myfield_count> 1過濾或計分。

+0

謝謝AR1,不是我正在尋找的解決方案,但我想它是唯一的方法。 – Mewel