1
FOR XML EXPLICITを使用してSQLからXML出力を作成しようとしています。ただし、私は別のデータベースを使用しているため、XML EXPLICITでなければなりませんが、この例ではSQL Serverを使用しています。重複する値FOR XML EXPLICIT
質問のために単純なテーブル@テーブルを宣言しました。それは2列(文字、数字)と3行を持っています。テーブル定義:
declare @table table (letter varchar(1), number int);
insert into @table values ('A',1),('A',2),('A',3)
私が持っているクエリはこれです:
select 1 as tag, null as parent,
letter as [letter!1!value],
null as [number!2]
from @table
union all
select 2 as tag, 1 as parent,
letter,number
from @table
for xml explicit
これから出力された私は、「手紙」列の値が同じなので、何が起こっている理解し、それ以下:
<letter value="A" />
<letter value="A" />
<letter value="A">
<number>1</number>
<number>2</number>
<number>3</number>
</letter>
しかし、私は出力が見えるように必要なのはこれです:
<letter value="A">
<number>1</number>
</letter>
<letter value="A">
<number>2</number>
</letter>
<letter value="A">
<number>3</number>
</letter>
これは可能ですか、そうなら、どうですか?
あなたは私の側から解決策、1を見つけたことを偉大な、しかし(ただ、Iのでトリックを行うようです'EXPLICIT' a *はなぜ*でなければならないのですか? – Shnugo