私は別個の選択クエリを書いていますが、私の結果に重複が残っています。 Oracle Viewには重複があり、その値が1回だけ返されるようにしています。ここでDistinct Query Left JOINを選択しましたが、まだ結果が重複しています
は私のクエリは
select
person.person_id,
person.last_name,
person.first_name,
person.first_name,
person.middle_name,
skill.skills_id,
(case
when trim(skills.skill_description) = 'typing fast' then 'TP1'
when trim(skills.skill_description) = 'courier district 9' then 'CD9'
when trim(skills.skill_description) = 'helpdesk shift 3' then 'HD3'
when trim(skills.skill_description) = 'helpdesk shift 5' then 'HD5'
....
else ''
end) AS skill_description
from person_view person
left join (select distinct person_id, skill_id, skill_description, updated_date
from skill_view) skills
on skills.person_id = person.person_id and
((trunc(sysdate) - PHONE.UPDATED_DT <= 1)) and
trim(skills.skill_description) in ('skill1', 'skill2', 'skill3' ...)
でありskill_descriptionの値の多くがあるので、私は15個のためにフィルタリングするためにIN句を追加 - 20特定skill_description値。
私の場合、値を受け取り、そのコードを設定します。
「distinct」キーワードを使用したときに重複を除外すると思っていましたが、動作しません。ここで
は私の出力は、すべてのヘルプは高く評価され、これまで
105 John E Doe SKILL1
105 John E Doe SKILL1
105 John E Doe SKILL2
105 John E Doe SKILL2
105 John E Doe SKILL3
105 John E Doe SKILL3
です。おかげ
? PHONE.UPDATED_DTについて何かを追加するように編集しましたが、PHONEテーブルについては言及していません。どうしたの?希望の出力を返さない質問をする前に、エラーなしでCOMPILESを投稿してください。 – mathguy