2012-06-12 63 views
11

我在SQL Server 2008中有一個數據庫,並且一個特定的表有作爲JSON編碼數組存儲在字段中的信息。我想知道是否有一種基於SQL的方法來選擇該JSON字段中的特定值?您可以使用SQL來從JSON數組中選擇值嗎?

我當然可以選擇字段並自己解析信息,但是我儘量避免這種情況。

在此先感謝!

回答

5

沒有什麼是原生的,但對後續問題的第一個答案TSQL

Parse JSON in TSQL

僅供參考參考有關解析JSON對象的文章,感興趣的文章是在這裏:

http://www.simple-talk.com/sql/t-sql-programming/consuming-json-strings-in-sql-server/

+0

哇,寫這篇文章的人值得我們的尊重! @ tbone14,如果您可以將用戶定義的函數添加到數據庫,這可以是您的解決方案。 – bfavaretto

+0

@bfavaretto:它的好東西不是它。即使是gbn也喜歡它! –

+1

從SQL Server 2016開始,有[native support](https://msdn.microsoft.com/en-us/library/dn921900.aspx)。 – GSerg

2

沒有(好吧,有子字符串匹配,但這將是緩慢和容易出錯)。如果你正在存儲你想用SQL過濾的東西,請不要使用JSON,而應使用單獨的列/表。

+0

我無法控制數據庫結構或如何存儲信息。我只是整合者-_- – tbone14

相關問題