設定:
(数量 1) 従業員テーブル (employeeID、employeeName)
(数量 1) PayType テーブル (payTypeID、payTypeName)
(数量 1) PaySchedule テーブル (payScheduleID、payScheduleName)
(数量 1) 従業員に複数の支払いタイプ (employeeID、payTypeID) が割り当てられるジャンクション テーブル (Employee_has_PayType)
(数量 1) 従業員に複数の給与スケジュール (employeeID、payScheduleID) が割り当てられるジャンクション テーブル (Employee_has_PaySchedule)
必要なもの:
これらの payTypeIDs (29,31,32) (Employee_has_PayType から) の 1 つまたはすべてが割り当てられているすべての EmployeeIDs と、payScheduleID 1 を持つ EmployeeIDs (Employee_has_PaySchedule から) を取得したい
これらの基準の両方を満たす EmployeeID のみが必要です。
これまでのところ、私はこれを試しました:
SELECT
Employee_has_PayType.Employee_employeeID as 'type',
Employee_has_PaySchedule.Employee_employeeID as 'sched'
FROM
Employee_has_PayType, Employee_has_PaySchedule
WHERE
Employee_has_PayType.PayType_payTypeID in (29,31,32)
AND
Employee_has_PaySchedule.PaySchedule_payScheduleID = 1
GROUP BY
Employee_has_PayrollSchedule.Employee_EmployeeID
ただし、paySchedule 1 を持つすべての employeeID のみが返されます。
どんな助けでも大歓迎です。