私は、deptをリストする文と、重複した従業員があるかどうかを記述しようとしています(重複する従業員は、2つ以上のレコードが同じ名字Oracle SQL /子テーブルで重複を見つける方法
T1:部門は T2:Empの T3:Party_Rel 注:T3は
Dept:
Id | DeptName
---- | --------
1 | Sales
2 | Marketing
3 | Finance
Emp:
Id | EmpFirstName | EmpLastName
---- | ------------ | ------
1 | Hope | Smith
2 | Judith | Bolt
3 | Nathalie | Meyers
4 | Nathalie | Meyers
5 | Helen | Chute
Party_Rel:
Id | DeptId | EmpId
---- | ------ | -----
1 | 1 | 1
2 | 1 | 2
3 | 3 | 3
4 | 3 | 4
5 | 1 | 5
6 | 3 | 5
を表1の交差点としての2列は、私は、これらの3つのテーブルを持っている)
を無視していますそう: 売上高は マーケティングは0従業員持っている2人の従業員を擁してい ファイナンスは3人の従業員を持ち、2は私のクエリの結果は次のようになり、同じファースト+姓に
を持っている:3人の従業員を擁してい
DeptId | DeptName | DuplicateCheck
------ | ------------ | -----------
1 | Sales | Pass
2 | Marketing | N/A
3 | Finance | Fail
販売そして、彼らはので、私はないDuplicateCheck =「PASS」 マーケティングは0従業員を持っているので、DuplicateCheck =「N/A」 ファイナンス3人の従業員を持ち、そのうちの2が重複しているのでDuplicateCheck =「失敗」
、すべて一意ですDuplicateCheckを表示するSQLを構築することを知らない: 私の第1の問題は、DeptとEmpの間の交差テーブルです。私はそれをどのように使用するのか分かりません。 私の第2の問題は、重複チェックの結果を表示値(合格、N/Aまたは失敗)に変換する方法です。
ありがとうございました。
ありがとうございます。期待通りに動作します。 –
@Largoようこそ – GurV