SQL 帮助(日期函数)

SQL Help(Date Functions)

我需要有关 SQL 查询的帮助。 TABLE:

Create Table Employees
        ( employee_id   number(3) Primary Key,
          first_name    varchar2(10),
          last_name varchar2(10),
          dept_code varchar2(3),
          hire_date date,
          credit_limit  number(4,2),
          phone_ext varchar2(4),
          manager_id    number(3)
        );

条目:

insert into Employees values (201, 'Susan', 'Brown', 'Exe', To_Date('01-Jun-1998','DD-Mon-YYYY'), 30, '3484', null);
insert into Employees values (202, 'Jim', 'Kern', 'Sal', To_Date('16-Aug-1999','DD-Mon-YYYY'), 25, '8722', 201);
insert into Employees values (203, 'Martha', 'Woods', 'Shp', To_Date('02-Feb-2004','DD-Mon-YYYY'), 25, '7591', 201);    
insert into Employees values (204, 'Ellen', 'Owens', 'Sal', To_Date('01-Jul-2003','DD-Mon-YYYY'), 15, '6830', 202);

我需要查询以列出截至 2007 年 1 月 1 日为止所有员工、他们的雇用日期以及每个人为公司工作的天数。

您可以在日期字段上使用 YEAR()

SELECT * FROM Employees WHERE YEAR(hire_date)='2003'

如果不行,可以用EXTRACT():

SELECT * FROM Employees WHERE EXTRACT(YEAR FROM hire_date)='2003'

并且,正如 Alan Hadsell 正确评论的那样:

SELECT COUNT(*) FROM Employees WHERE EXTRACT(YEAR FROM hire_date)='2003'