在oracle for informatica中,我使用条件to_char(hiredate, 'YYYY')=1981
,它向我展示了1981年的所有员工,如果我想看到1981年和1982年的员工在一起,需要哪些代码?
答案 0 :(得分:1)
在日期列上查询一组年份
可以创建一个条件,您可以将hiredate
转换为char
,并按以下方式查找一组年份:
SELECT
*
FROM
emp
WHERE
TO_CHAR(hiredate,'YYYY') in ('1981', '1982')
;
这适用于一小组记录。
对于更大的,非平凡的记录集,特别是当DATE列上可能有索引时,我个人会在DATE本身选择一个条件:
SELECT
*
FROM
emp
WHERE
hiredate >= TO_DATE('01-JAN-1981','DD-MON-YYYY')
AND hiredate < TO_DATE('01-JAN-1983','DD-MON-YYYY')
;
在这里,我确保使用hiredate
运算符捕获1981年的所有>=
值,并通过指示hiredate
小于第一个日期来获取所有1982年的记录1983。
答案 1 :(得分:0)
你可以使用IN子句
where to_char(hiredate, 'YYYY') IN ( '1981', '1982')