SQL Server XML型メソッド value()を使ってみたら、エラーを吐かれた。
select
(
select
name
, value
from
(
select
'a' name
, 1 value
union all
select
'b' name
, 2 value
) work
order by
name for xml path ('record')
, TYPE
)
.value('record/value', 'varchar') as result
XQuery [value()]: 'value()' にはシングルトン (または空のシーケンス) が必要です。型 'xdt:untypedAtomic *' のオペランドが見つかりました。
とな。
select
(
select
name
, value
from
(
select
'a' name
, 1 value
union all
select
'b' name
, 2 value
) work
order by
name for xml path ('record')
, TYPE
)
.value('(record/value)[2]', 'varchar') as result
result |
---|
2 |
と添字を付けることで表示できた。ふうむ。