2013-05-05 43 views
1

我使用類似於下面的格式在RMDB數據庫中存儲任意對象(以下簡稱「數據」欄)來記錄:轉換從JSON Excel列使用的PowerView

<id> <object id> <object category> <creation date> <created by> <data> 

所有列的是整數或字符串 - 但數據列是一個JSON記錄

所以在數據庫爲例行會看起來像一個轉儲:

<id> <object id> <object category> <creation date> <created by> <data> 

1 abcdef123 myclassCategory 1-1-2000 me {"key1" : "value1" , "key2" : "value2" ... } 

現在我試圖創造一些報道USI ng excel - 我想創建一些桶根據「對象類別」,並根據從「數據」創建的桶json鍵值

我想用power view(或powerpivot)來解析數據列根據JSON值 - 進入新的紀錄 - 然後創建報表,圖表,柱狀圖等

如何做到這一點(解析數據列)?

謝謝!

回答

1

了大量的研究後,我發現,要解決這個問題,最簡單的方法是下載一個Excel中添加名爲 - "data explorer"

使用這個工具,你可以從各種來源導入數據 - 包括原始SQL數據庫的CSV文件,JSON記錄等

導入數據後,將打開一個嚮導,通過它,你可以操縱數據,連接表,隱藏列,甚至對行進行一些邏輯功能。

一個最大的事情,我發現那裏是「右鍵」列名,然後選擇選項「改造」,然後選擇「JSON」

選擇JSON後一個選項,Excel將嘗試發現字段名稱(我發現,這並不完美 - 如果字段名稱正在改變,它將只與前100條記錄一致)

相應地轉換數據類型後我能夠擴展那些列,執行連接等。

偉大的工具和相當快

之後,我使用電源主軸和電源視圖來創建報告

+0

更新:數據資源管理器現在是電源查詢 – 2015-02-13 19:03:48

0

DAX是一種非常基礎的語言,所以它沒有任何JSON表達式。所以我認爲在PowerPivot中這樣做的唯一方法就是將其作爲字符串處理來完成,基本上爲每個您希望刪除所有其他JSON的輸出列創建一個函數。但是,這是可怕的低效率,重複性,並且只是徹頭徹尾的討厭。

在我看來,你會更好地裝入的PowerPivot之前做的一些內容預處理。你有很多選擇,所以無論你最舒服,我猜。

據我所知,恐怕沒有什麼「開箱即用」的,你可以做。如果有人知道替代品,很樂意糾正。

+1

感謝您的答案。檢查dataexplorer,似乎很多情況下工作很好 – 2013-05-16 07:26:28