Campos em colunas

10/06/2019

0

Prezados, bom dia!

Tenho que retornar os dados de um campo de uma tabela. Porém eles estão guardados da seguinte maneira:

[{"name":"Por Arquivamento","value":"Não"},{"name":"Por Notificado","value":"Não"},{"name":"Por Cópias","value":"Não"},{"name":"Por Folha Adicional","value":"Não"},{"name":"Por Quesitos","value":"Não"},{"name":"Exibir Valor","value":"Não"},{"name":"Exibir Busca","value":"Sim"},{"name":"Por Quantidade","value":"Não"},{"name":"Por Apostilamento","value":"Não"}]

Como fazer para que a query entenda que o campo "name" e "value" vão ser colunas diferentes?
Chromusmaster

Chromusmaster

Responder

Posts

10/06/2019

Chromusmaster

Consegui fazer da seguinte maneira:
Select * from (SELECT *
FROM OPENJSON(@json)
WITH (Nome varchar(max) 'strict $.name',
Valor nvarchar(max) '$.value') )Retorno

Onde @json é uma query declarada com as tabelas de consulta.
Responder

12/06/2019

Thiago Moreno

qual é a view? como eh json, se vc estiver usando o javascript, voce vai fazer o forEach ou o map() do objeto dentro de um tbody.

para cada iteração, voce cria uma

<tr>
    <td>{o.name}</td>
    <td>{o.value}</td>
</tr>
Responder

12/06/2019

Chromusmaster

qual é a view? como eh json, se vc estiver usando o javascript, voce vai fazer o forEach ou o map() do objeto dentro de um tbody.

Precisava retornar os dados como uma tabela via sql para construção de um relatório. Do modo que mencionei deu certo para fazer o relatorio
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar