如何使用SQL在Oracle上获得当前年份? [英] How do I get the current year using SQL on Oracle?
本文介绍了如何使用SQL在Oracle上获得当前年份?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要在SQL语句中添加当前年份作为变量,如何使用SQL来检索当前年份?
ie
BETWEEN
TO_DATE('01 / 01 / ** currentYear ** 00:00:00','DD / MM / YYYY HH24:MI:SS')
AND
TO_DATE('31 / 12 / ** currentYear ** 23:59:59','DD / MM / YYYY HH24:MI:SS')
解决方案
使用to_char:
从双重选择to_char(sysdate,'YYYY');
在您的示例中,您可以使用以下内容:
$ {code} BETWEEN trunc(sysdate,'YEAR')
AND add_months(trunc(sysdate,'YEAR'),12)-1/24/60/60;
比较值正是您要求的:
选择trunc(sysdate,'YEAR')begin_year
,add_months(trunc(sysdate,'YEAR'),12)-1/24/60/60 last_second_year
来自双
BEGIN_YEAR LAST_SECOND_YEAR
----------- ----------------
01/01/2009 31/12/2009
I need to add the current year as a variable in an SQL statement, how can I retrieve the current year using SQL?
i.e.
BETWEEN TO_DATE('01/01/**currentYear** 00:00:00', 'DD/MM/YYYY HH24:MI:SS') AND TO_DATE('31/12/**currentYear** 23:59:59', 'DD/MM/YYYY HH24:MI:SS')
解决方案
With to_char:
select to_char(sysdate, 'YYYY') from dual;
In your example you can use something like:
BETWEEN trunc(sysdate, 'YEAR')
AND add_months(trunc(sysdate, 'YEAR'), 12)-1/24/60/60;
The comparision values are exactly what you request:
select trunc(sysdate, 'YEAR') begin_year
, add_months(trunc(sysdate, 'YEAR'), 12)-1/24/60/60 last_second_year
from dual;
BEGIN_YEAR LAST_SECOND_YEAR
----------- ----------------
01/01/2009 31/12/2009
这篇关于如何使用SQL在Oracle上获得当前年份?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文