SQL不是我最强的主题,而且我在创建视图方面遇到了困难。
我应该创建一个视图,指出哪些时间表存在争议。这些是未经批准且超过两周的时间表。数据应以以下格式显示:
TIMESHEET_ID TIMESHEET EMPLOYEE
15 16-feb-15 Gareth Smith
我再一次没有做过SQL。此创建视图所需的表格如下:
timesheet
:
Name Null? Type
TIMESHEET_ID NOT NULL NUMBER(3)
TIMESHEET_EMP NOT NULL NUMBER(3)
TIMESHEET_WC NOT NULL DATE
TIMESHEET_HOURS NUMBER(2)
TIMESHEET_OT NUMBER(2)
TIMESHEET_APPROVED NUMBER(3)
employee
:
Name Null? Type
EMP_ID NOT NULL NUMBER(3)
EMP_FIRSTNAME NOT NULL VARCHAR2(50)
EMP_SURNAME VARCHAR2(50)
EMP_DEPARTMENT NUMBER(2)
EMP_STREET VARCHAR2(50)
EMP_TOWN VARCHAR2(50)
EMP_DISTRICT VARCHAR2(50)
EMP_GRADE NUMBER(3)
EMP_SITE VARCHAR2(30)
FUNTOM_GRADE NUMBER(3)
EMPLOYEE_STATUS VARCHAR2(10)
EMPLOYEE_START DATE
EMPLOYEE_TERMINATION DATE
答案 0 :(得分:1)
像这样。
使用TIMESHEET_EMP = EMP_ID加入两个表。检查日期是否至少14天。还要验证TIMESHEET_APPROVED - 但我不知道这里的值 - 所以替换???有你自己的价值。
create view viewname as
select t.TIMESHEET_ID, t.TIMESHEET, e.EMPLOYEE
from timesheet t
join employee e ON t.TIMESHEET_EMP = e.EMP_ID
where t.TIMESHEET_WC <= current_date - '14' day
and t.TIMESHEET_APPROVED = ???
由于没有指定dbms,我正在使用ANSI SQL日期比较。