これが私のシナリオです:
--ORDER table
OrderID OrderCode DateShipped ShipmentXML
1 ABC 08/06/2013 <Order><Item CustomerName="BF" City="Philadelphia" State="PA"></Item></Order>
2 XYZ 08/05/2013 <Order><Item CustomerName="TJ" City="Richmond" State="VA"></Item></Order>
プロセスのある時点で、これらの注文のそれぞれの追跡番号を知ることができます。追跡番号は、次のような別の表で利用できます。
--TRACKING table
TrackingID OrderCode TrackingNumber
98 ABC 1Z1
99 XYZ 1Z2
私が期待している出力は次のとおりです。
OrderID OrderCode ShipmentXML
1 ABC <Order><Item CustomerName="BF" City="Philadelphia" State="PA" DateShipped="08/06/2013" TrackingNumber="1Z1"></Item></Order>
2 XYZ <Order><Item CustomerName="TJ" City="Richmond" State="VA" DateShipped="08/05/2013" TrackingNumber="1Z2"></Item></Order>`
ご覧のとおり、TrackingNumber
とDateShipped
for eachを取得OrderCode
して属性として持たせようとしています。意図は、UPDATE ではなく SELECT です。
私が見たすべての例は、XML を定数値または変数で更新する方法を示しています。JOIN を使用した XML 更新を示すものは見つかりませんでした。これを達成する方法を教えてください。
アップデート:
「Select not Update」とは、永続テーブルを更新しないことを意味します。Mikael が最初の回答の下にコメントしたように、一時テーブルの UPDATE はまったく問題ありません。