3

My JSON object is stored in the table (single cell). Right now, I'm reading the cell and saving the value to @json NVARCHAR(MAX)

SELECT *
FROM OPENJSON ( @json )  
WITH (...)

, but that obviously doesn't work in views. How can I do something like this?

SELECT *
FROM OPENJSON ( select top 1 json_object from json_raw )  
WITH (...)
GMB
  • 216,147
  • 25
  • 84
  • 135
Mara
  • 371
  • 5
  • 16

1 Answers1

3

You can use cross apply to apply openjson() to each and every row of your table:

create view jsonview as
select x.*
from json_raw j
cross apply openjson(j.json_object) with (...) as x
GMB
  • 216,147
  • 25
  • 84
  • 135