2016-05-16 133 views
2

我正在使用excel powerquery從elasticsearch中提取數據。 這對一個結果工作正常,但我想獲得很多。從最初的ES查詢中,我得到一個json對象列表,我可以很容易地將它轉換爲我想要的表格。 問題是查詢編輯器只允許我選擇一個結果,而不是從列表中解析所有內容。Powerquery遍歷步驟列表

查詢是:

let 

    Content = "{""query"": {""match_all"": {}}}", 
    Source = Json.Document(Web.Contents("http://es_host:9200/lcm_db/_search"))[hits][hits], 
    Source1 = Source{1}, 
    _source = Source1[_source], 
    #"Converted to Table" = Record.ToTable(_source), 
    #"Transposed Table" = Table.Transpose(#"Converted to Table") 
in 
    #"Transposed Table" 

Json.Document(Web.Contents("http://es_host:9200/lcm_db/_search"))[hits][hits] 

給我的列表,這是我必須做的4個步驟:

Source1 = Source{1}, 
_source = Source1[_source], 
#"Converted to Table" = Record.ToTable(_source), 
#"Transposed Table" = Table.Transpose(#"Converted to Table") 

我怎麼會做出powerquery做這四個步驟,所有列表結果如何?

感謝, 艾薩克

回答

2

您可以使用List.Transform,並且包括在let語句的4個步驟。它看起來像這樣:

= List.Transform(Json.Document(Web.Contents("http://es_host:9200/lcm_db/_search"))[hits][hits], (value) => each 
    let 
     _source = value[_source], 
     #"Converted to Table" = Record.ToTable(_source), 
     #"Transposed Table" = Table.Transpose(#"Converted to Table") 
    in 
     #"Transposed Table")
+0

不錯!謝謝,我會試着讓你知道 – isaapm

+0

原來的答案有錯誤,我已經編輯它來修復它。 –