에 대한보기를 만듭니다나는 다음과 같은 두 테이블에서 일하고 있어요 작업 표
CREATE TABLE Consultant_Alloc (
project_no number(6),
activity_no number(4) NOT NULL,
consultant_id char(7) NOT NULL UNIQUE,
allocated_hours number(3) NOT NULL,
hours_worked number(3),
-- SUM(Consultant_Alloc.allocated_hours)
CONSTRAINT pk_project_activity_consultant PRIMARY KEY (project_no, activity_no, consultant_id),
CONSTRAINT fk_consultant_id FOREIGN KEY (consultant_id) REFERENCES Consultant (consultant_id)
ON DELETE CASCADE,
CONSTRAINT fk_project_no_activity_no_budget FOREIGN KEY (project_no, activity_no, budget) REFERENCES Activity (project_no, activity_no, budget_hours)
ON DELETE CASCADE,
);
CREATE TABLE Activity (
activity_no number(4) NOT NULL,
activity_name varchar2(50),
project_no number(6) NOT NULL,
allocated_hours number(3) CHECK (allocated_hours > 0),
start_date date,
end_date date,
comp_date date,
CONSTRAINT pk_Activity_project_no_activity_no PRIMARY KEY (project_no, activity_no), -- Each activity must be unique
CONSTRAINT fk_Activity_project FOREIGN KEY (project_no) REFERENCES Project (project_no)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT ck_dates CHECK (start_date >= end_date)
);
내가 이전 달력의 달 프로젝트에 참여 시간의 수를 자세히 오라클 SQL 뷰를 작성해야합니다. 나는 내 사업에 대해 이것을 배우고 있으며 이전 캘린더 달의 모든 프로젝트를 참조하는 방법을 알 수 없기 때문에 이것을 어떻게 할 수 있는지에 대한 몇 가지 지침을 원합니다.
감사
CREATE VIEW time_sheet
AS SELECT CA.consultant_id CONSULTANT, A.project_no PROJECT, A.activity_no ACTIVITY, CA.hours_worked HOURS
FROM Consultant_Alloc CA, Activity A
WHERE -- in previous calendar month
GROUP BY CA.consultant_id
난까지 해요 곳입니다.
또는 어디에서든지이 것을 배울 수 있습니다 – user3414871