2014-10-28 14 views
1

我有以下這是從存儲在Windows Azure中DocumentDb外部方收到JSON字符串:DocumentDb,我如何能減少源在不同的形狀較小的子集和輸出時原文件沒有字段名

{ 
    "kind": "Data", 
    "profileInfo": { 
    "profileId": "12345", 
    "accountId": "12345", 
    }, 
    "rows": [ 
    [ 
     "20140925", 
     "762" 
    ], 
    [ 
     "20140926", 
     "552" 
    ], 
    ] 
} 

我想減少來源到一個較小的子集和輸出不同的形狀。

「SELECT * FROM date.rows」產量的子集:

[ 
    [ 
    [ 
     "20140925", 
     "762" 
    ], 
    [ 
     "20140926", 
     "552" 
    ], 
    ] 
] 

的問題是,因爲我沒有字段名稱,我怎麼能修改使用「選擇{」日期「的輸出: ?「值」:?}語法作爲DocumentDb文檔中提到

http://azure.microsoft.com/en-us/documentation/articles/documentdb-sql-query/

回答

0

我相信你正在尋找改變你的數據看起來是這樣的:?

[ 
    { 
    date: 20140925, 
    value: 762 
    }, 
    { 
    date: 20140926, 
    value: 552 
    } 
] 

在這種情況下,您可以使用JOIN子句遍歷文檔的子項(rows),然後使用VALUE關鍵字從查詢的文檔中提取日期和值的值。

這是我用來產生上述結果的查詢:

SELECT VALUE {'date': r[0], 'value': r[1]} 
FROM Collections c 
JOIN r IN c.rows 
WHERE c.kind = "Data" 

希望這回答你的問題:)

+0

謝謝,這個作品!我爲什麼沒有想到這一點! – 2014-10-30 23:00:56

相關問題