次のような単純なテーブルがある場合:
Id Name Age
1 Saeed 32
2 John 28
3 David 34
For XML
次に、SQL Server で次のように使用して JSON を作成できます。
select '{ name : "' + Name + '", age : ' + age + ' }'
from People
where Id = 1
for xml path('')
列は事前にわかっているため、これは簡単です。しかし、私は EAV テーブルから JSON を作成することに行き詰まっています。たとえば、テーブルが次の場合:
Id EntityId Key Value
1 1 Name Saeed
2 1 Age 32
3 1 Gender Male
4 1 Key1 Value1
5 1 Key2 Value2
この JSON を作成するにはどうすればよいですか?
{ Name: "Saeed", Age: 32, Gender: "Male", Key1: "Value1", Key2: "Value2" }
このクエリから:
select *
from PeopleEav
where EntityId = 1
キーの数は可変であることに注意してください (EAV テーブルです)。