2012-07-19 45 views
0

好吧,这可能是一个简单的问题,但我不知道执行该操作的命令。在Oracle数据库中返回月份和年份

我想根据给定的月份和年份检索特定的数据。假设用户想要查看2011年6月雇用的所有员工,我该如何编写命令?

SELECT hire_date, to_char(hire_date, 'month') 
    FROM employees 
    WHERE to_char(hire_date,'MM') = '06'; 

这将返回所有在6月份雇用的员工。但我只想要在2011年聘用的人。我怎样才能把这一年纳入命令?

回答

5
where to_char(hire_date, 'YYYYMM') = '201106'; 

或(多个索引友好)

where hire_date between 
    to_date('20110601', 'YYYYMMDD') and to_date('20110701', 'YYYYMMDD') 
               -- or maybe '20110630' 
+1

包括两个端点之间,所以我建议:其中HIRE_DATE> = TO_DATE( '20110601', 'YYYYMMDD')和HIRE_DATE Craig 2012-07-19 15:34:11