1

XML ファイルからクエリを取得した後、クエリを実行しています。クエリには、別のテーブルから取得した数百のパラメーターを渡す IN 句があります。現在、何千ものレコードを取得しています。特定の行を取得するために使用される特定の IN 句パラメーターを把握する方法があるかどうかを知りたいです。

EXP の場合 - 「Select a,b,c from Table where d IN (p,q,r)」というクエリを起動するとします。

PS - 上記のクエリは、プログラムで使用しているクエリではなく、質問をクリアするためのサンプル クエリです。私が使用しているクエリははるかに複雑で、既に述べたように XML ファイルから動的に取得されます。

ここで、Row1、Row2、Row3 の 3 つの行を取得するとします。どの IN パラメータ (p、q、または r) を使用して Row1 が生成されるかを知りたい。Row2 と Row3 についても同様です。

私の質問が明確であることを願っています:)

4

1 に答える 1

0

ほとんどのデータベースでは、それを直接見つける方法はないと思います。CASEただし、ステートメントを使用してエミュレートできます。syntakはベンダーに依存していると思います。

Select a,b,c,
  CASE
    WHEN d = p THEN 'p'
    WHEN d = q THEN 'q'
    WHEN d = r THEN 'r'
  END as selcol
from Table where d IN (p,q,r)'

同じことをする関数を書くことができます。

于 2012-11-10T22:10:26.300 に答える