私は2つのビューview_aとview_bを結合する必要があります。
view_aはOracle 5つの条件で2つのビューを結合
所望の結果
ID、名前、アドレス1、アドレス2、市、州、CNTRYのjob_title ID、アドレス1、アドレス2、市、州、 view_b ID、frst_name、姓、タイプ、日付をCNTRY列を有しています、job_title
私のクエリの条件は次のとおりです。
1.両方のビューをidカラムに結合します。
2.日付DESC順
3 CONCATENATEのFIRST_NAMEと
4種類のLAST_NAMEつ以上の役員は、次にある場合、「役員」
5に等しいに基づいて、一つだけ役員すなわち、1つの上の行を得ます日付。
6.役員がいない場合は、結果のnameおよびjob_title列にnull値が設定されています。
私が使用しているクエリ:
select
*
from
view_a A
join
(
select
(first_name || ' ' || last_name) as name,
job_title,
id
from
view_b
where
type = 'officer'
and
id is not null
order by date desc fetch first 1 row only
) B
on A.id=B.id
をしかし、このクエリは一つだけの結果を得ています。私はOracle 12cを使用しています。これらのビューには約800,000のレコードがあります。あなたがこれを行うことができます
このクエリが正常に動作しているが、何も「官」のタイプが存在しない場合、私はレコードを取得していませんよ、その列がnullのレコードを取得する必要があります。 – CodingFreak
@CodingFreak Fixed。今すぐお試しください – GurV