--查找1985年以后入职的人员,也就是时间做对比
--hierdate列对比1985年入职的,需要将1985转换为日期类型
SQL> SELECT * FROM EMP WHERE HIREDATE >= TO_DATE(1985,'yyyy');
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7788 SCOTT ANALYST 7566 1987/4/19 3000.00 20
7876 ADAMS CLERK 7788 1987/5/23 1100.00 20
SQL> select * from emp where hiredate >= to_date(19850101,'YYYYMMDD');
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7788 SCOTT ANALYST 7566 1987/4/19 3000.00 20
7876 ADAMS CLERK 7788 1987/5/23 1100.00 20
--1985-01-01是个字符串,需要单引号
SQL> select * from emp where hiredate >= to_date('1985-01-01','YYYY-MM-DD');
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7788 SCOTT ANALYST 7566 1987/4/19 3000.00 20
7876 ADAMS CLERK 7788 1987/5/23 1100.00 20
SQL> select to_date('1985-1-1','YYYY-MM-DD') from dual;
TO_DATE('1985-1-1','YYYY-MM-DD
------------------------------
1985/1/1
--报错:因为转换类型为MM和DD,而11容易产生歧义系统会任务11月,而没有日
SQL> select to_date('198511','YYYY-MM-DD') from dual;
select to_date('198511','YYYY-MM-DD') from dual
ORA-01861: literal does not match format string
SQL> select to_date('19850101','YYYY-MM-DD') from dual;
TO_DATE('19850101','YYYY-MM-DD
------------------------------
1985/1/1