Dados JSON no SQL Server
- 23-06-2022
- Toanngo92
- 0 Comments
Os dados JSON são um formato de dados textuais usado para trocar dados em aplicativos modernos da WEB/Mobile.
O JSON também pode ser usado para armazenar dados não estruturados em arquivos de log ou bancos de dados NoQL, como o Microsoft Azure Cosmos DB.
Muitos negócios REST retornarão resultados em formato de texto JSON ou receberão entrada como formato JSON.
Por meio das funções internas do SQL Server, podemos:
- Analise o texto JSON, edite o valor.
- Converta matrizes em objetos JSON para o formato de tabela.
- Execute uma consulta T-SQL com o objeto JSON convertido.
- Formate a saída da instrução T-SQL no formato JSON.
Algumas funções internas que lidam com JSON:
- ISJSON: verifique a validade de uma string JSON.
- JSON_VALUE: saída de um único valor de uma string JSON.
- JSON_QUERY: objeto de saída ou array da string JSON
- JSON_MODIFY: altera o valor da string JSON
Mục lục
Modificar valor JSON
Para editar o elemento do texto JSON, a função JSON_MODIFY é usada para atualizar o valor da propriedade na string JSOn e retornar a string JSON atualizada.
Por exemplo:
DECLARE @json nvarchar(max); set @json = '{"info" : {"address": [{"town": "Belgrade"}, {"town" : "Paris"}, {"town": "Marid"}]}}'; SET @json = JSON_MODIFY(@json, '$.info.address[1].town' , 'London'); select modifiedJson = @json
OPENJSON para converter JSON em dados de linha e coluna
Por exemplo:
declare @json nvarchar(max); set @json = N'[ {"id": 2, "info": {"name": "john","surname": "smith"},"age": 25}, {"id": 5, "info": {"Jane": "john","surname": "smith"},"dob": "2005-11-04T12:00:00"} ]'; select * from OPENJSON(@json) with( id INT 'strict $.id', firstName nvarchar(50) '$.info.name', lastName nvarchar(50) '$.info.surname', age INT, dateofBirth datetime '$.dob' )
Exportar dados do SQL Server para JSON
Por exemplo:
use AdventureWorks2019; SELECT BusinessEntityID, FirstName as "info.name" , LastName as "info.surname", ModifiedDate as dob from Person.Person for json PATH