0

クエリの1つに条件を挿入したいのですが、その方法がよくわかりません。基本的に、私は一連のファイルをそれらのフォルダー_id、つまりそれらが属するフォルダーでソートしています(folder_idによる順序を使用)。これらのファイルグループごとに、特定の条件を満たす最初のファイルを選択するためのクエリが必要です。フォルダ内のどのファイルでもその条件が満たされない場合、クエリはフォルダ内で利用可能な最初のドキュメントを選択する必要があります。

これは私のクエリです(簡略化):

select folder_id,
       file_id,
       first_name
from f_file
where first_name = 'John'
order by folder_id

だから、私の結果が今なら:

FOLDER ID    FILE ID      AUTHOR
A            32           John
A            41           John
A            56           Thomas
A            78           Peter
B            02           Peter
B            03           Peter
B            45           Peter
C            34           John
C            56           Thomas
C            77           Peter
C            86           John
D            12           Peter
D            34           Thomas
D            89           Thomas

フォルダーごとに、Johnによって作成された最初のドキュメント(最小のfile_id)のみをクエリに表示したいと思います。そのフォルダにJohnによって作成されたドキュメントがまったくない場合は、他の作成者の最初のドキュメントよりも作成されます。

FOLDER ID    FILE ID      AUTHOR
A            32           John
B            02           Peter
C            34           John
D            12           Peter

したがって、IDは最低である必要がありますが、作成者はJohnまたは別のIDである必要があります。私の考えは、IF EXISTS条項に条項を挿入するWHEREことですが、それを行うにはどうすればよいですか?

ご回答ありがとうございます。ヴァル

4

0 に答える 0