sql,找出12年前员工的语句

来源:百度知道 编辑:UC知道 时间:2024/08/21 13:45:41
emp员工表 字段内容如下:

empno 员工号
ename 员工姓名
job 工作
mgr 上级编号
hiredate 受雇日期
sal 薪金
comm 佣金
deptno 部门编号

10.找出早于12年前受雇的员工.
能否解释一下为什么这么用,还是没看明白

--hiredate 受雇日期 我默认你是用date型的
select *
from emp
where hiredate<(convert(char(8),getdate(),109)-'00000012')

select * from emp where extract(year from sysdate)-extract(year from hiredate)>12;

select *
from emp
where datediff(yy,hiredate,gatedate())>=12

假设hiredate 受雇日期的类型为日期类型的啊。
select * from emp where YEAR(hiredate)=1997--日期可以改,这里是2009-12.