-1

初めてxml列をサブストリング化する必要があります。以下は、xml列からの1行です。DRN、日付、金額ごとに部分文字列を付ける必要があります。1行に複数のインスタンスが存在する場合があります。これをどのようにサブストリングしますか?

<ITEMS><ITEM SEQ="0" INDNO="50814" DRN="N00230000004816012012" CR_GUID="FB64CD73-8048-4775-81F2-969AE2AB442C" DR_GUID="8025D121-E3B6-4479-A393-CDDC5BEB53C0" CR_ACC="" DR_ACC="" AMOUNT="0" DATE="20120202" /></ITEMS>

ありがとうございました。

4

1 に答える 1

0

使用しないxml データ型メソッドsubstringを使用する

SQL フィドル

MS SQL Server 2008 スキーマのセットアップ:

create table YourTable
(
  XMLColumn xml
)

insert into YourTable values
('<ITEMS><ITEM SEQ="0" INDNO="50814" DRN="N00230000004816012012" CR_GUID="FB64CD73-8048-4775-81F2-969AE2AB442C" DR_GUID="8025D121-E3B6-4479-A393-CDDC5BEB53C0" CR_ACC="" DR_ACC="" AMOUNT="0" DATE="20120202" /></ITEMS>')

クエリ 1 :

select I.N.value('@DRN', 'varchar(50)') as DRN
from YourTable as T
  cross apply T.XMLColumn.nodes('/ITEMS/ITEM') as I(N)

結果

|                   DRN |
-------------------------
| N00230000004816012012 |
于 2012-11-26T18:24:45.763 に答える