0

XML データは、この形式で SQL サーバーに格納されます。

   <Fields>
     <Field id="1" name="aa" value="00"/>
     <Field id="2" name="bb" value="11"/>
     <Field id="3" name="cc" value="22"/>
     <Field id="4" name="dd" value="33"/>
  </Fields>

条件を満たすすべての行を返したいのですが、各 xml を次のように異なる形式で返します。

   <Fields aa="00" bb="11" cc="22" dd="33">
   </Fields>

つまり、格納された形式のフィールド タグのそれぞれが、返される xml の属性として返されるようにします。

期待されるフォーマットは <Fields aa="00" bb="11" cc="22" dd="33"> </Fields>

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

4

1 に答える 1

0

以下は、目標を達成するためのクエリです。サーバーから XML データを取得する方法を知っていると思います。ここでは、変数を使用してインラインで対処します$fields

xquery version "1.0";

let $fields :=
    <Fields>
        <Field id="1" name="aa" value="00"/>
        <Field id="2" name="bb" value="11"/>
        <Field id="3" name="cc" value="22"/>
        <Field id="4" name="dd" value="33"/>
    </Fields>
return
    <Fields>{
        for $field in $fields/Field
        let $name := $field/@name
        let $value := $field/@value
        return 
            attribute { $name } { $value }
    }</Fields>
于 2012-06-22T19:46:46.323 に答える