[英]Getting the Keys and Values from a JSON array in SQL Server 2016
在 SQL Server 2016 中的一個過程中工作,並在 nvarchar 變量中傳遞了一個 JSON 對象。 變量看起來像這樣
'{"and":[{"agentId":1},{"status":"In Progress"},{"or":[{"who":{"like":"%Alex%"}}, {"status":"已關閉"}]}]}'
我需要把它放到這樣的桌子上
SELECT x.[Key], x.[Value]
FROM OPENJSON(@whereString, '$') AS x;
這一直有效,直到它到達嵌入式數組。 我不會提前知道鍵名,所以我認為這會處理 JSON_Value 和 JSON_Query
我做錯了,讓它變得比我需要的要困難得多。
使用查詢:
SELECT x.[key] as keyString, x.[Value] as valueString FROM OPENJSON(@JSONString, '$') AS x
會給我上層的鍵和值到一個臨時表中。 然后,如果該行的鍵值為 'and' 或 'or'(這些鍵值將具有數組作為 valueString),我可以僅使用該行的 valueString 遞歸調用相同的 SQL,它將很好地將它們分開。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.