データベース内の計算を表すオブジェクトのシリアル化をもたらす次の問題を解決しようとしています。レポート目的でクエリを実行しようとしていますが、XML 階層の別の部分で同じ位置にあるノードを見つける必要があります (これらは、オブジェクトのシリアル化string[]
とdouble[]
属性に由来します)。たとえば、私は次のようなものを持っています
...<parent>
<Names>
<string>Name1</string>
<string>Name2</string>
<string>Name3</string>
</Names>
and
...<parent>
<Weights>
<double>0.5</double>
<double>0.13</double>
<double>0.2</double>
</Weights>
オブジェクトを逆シリアル化するのではなく、SQL でクエリを実行できるように、XML BLOB をクエリして各 XML BLOB の名前と重みのペアを取得できるようにしたいと考えています。名前と重みを引き出すことができますが、それらを組み合わせると、それらを位置的に一致させるのに苦労しているため、交差したクエリになります。答えはおそらく、名前用と重み用の2つのビューを作成し、それらを位置で結合することだと思いましたが、のようなものでない限り、クエリでは position() を使用できません[position() < 6]
。