次の週にマイルストーン記念日を迎えた従業員を識別するオラクル SQL を作成する必要があります。実際には 2 つのコードを作成する必要がありました。1 つは、今年節目を迎えたすべての従業員を特定するためのもので、2 つ目は、来週節目を迎えた従業員を特定するためのものです。
したがって、今週このコードを実行すると、来週記念日を迎える人をすべてキャプチャできます。このコードでは、特定の日付の記念日を識別するコードを作成できました...しかし、来週の 7 日間すべてを調べて、誰が記念日を持っているかを示すコードを作成することはできません。
以下は、2013 年 3 月 27 日の今日のクエリを実行した場合に、2013 年 3 月 31 日日曜日に記念日を持つ人を特定するためのクエリです。
SELECT a.full_name AS Full_Name,
b.adjusted_svc_date AS Service_Date,
d.name Job_tittle,
TRUNC ( (TO_NUMBER (TO_CHAR (SYSDATE + 4, 'mmddyyyy'))) -- TO_NUMBER (TO_CHAR (SYSDATE+4, 'MM/DD/YYYY'))
- TO_NUMBER (TO_CHAR (b.adjusted_svc_date, 'mmddyyyy')))
AS Years_OF_Service
FROM per_people_x a,
per_periods_of_service b,
per_assignments_x c,
per_jobs d
WHERE a.person_id = c.person_id
AND c.period_of_service_id = b.period_of_service_id
AND c.job_id = d.job_id
AND TRUNC (
(TO_NUMBER (TO_CHAR (SYSDATE + 4, 'mmddyyyy')))
- TO_NUMBER (TO_CHAR (b.adjusted_svc_date, 'mmddyyyy'))) IN
(5, 10, 15, 20, 25, 30)
AND a.person_type_id IN (6, 7)