十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
以下列举两种方式在在Oracle中获得日期中的年份,例如把sysdate中的年份取出来。
成都创新互联公司是一家集网站建设、成都网站建设、网站页面设计、网站优化SEO优化为一体的专业网站制作公司,已为成都等多地近百家企业提供网站建设服务。追求良好的浏览体验,以探求精品塑造与理念升华,设计最适合用户的网站页面。 合作只是第一步,服务才是根本,我们始终坚持讲诚信,负责任的原则,为您进行细心、贴心、认真的服务,与众多客户在蓬勃发展的市场环境中,互促共生。
1、Select to_number(to_char(sysdate,'yyyy')) from dual
实例代码:
select
to_number(to_char(t.hiredate,'yyyy'))as 入职年,
from emp t;
运行结果:
2、使用Extract函数,Select Extract(year from sysdate) from dual,这种方法省掉了类型转换,
看上去更加简洁。此方法获得的结果,是数值型
实例代码:
select
extract(year from t.hiredate) as入职年,
from emp t ;
运行结果:
扩展资料:
如果想在Oracle中获取日期中的月份,天数。可以将Select to_number(to_char(sysdate,'yyyy'))
from dual改为Select to_number(to_char(sysdate,'MM')) from dual和Select
to_number(to_char(sysdate,'DD')) from dual。
Extract函数中只需将Select Extract(month from sysdate) from dual改为Select Extract(year from sysdate) from dual和Select Extract(day from sysdate) from dual
oracle获得上个月的月份:
select to_char(add_months(trunc(sysdate),-1),'yyyymm') from dual;
oracle获得下个月的月份:
select to_char(add_months(trunc(sysdate),1),'yyyymm') from dual;
oracle获得上个月的第一天日期:
select data_dt ,ADD_MONTHS(TRUNC( to_date(data_dt, 'YYYY-MM-DD'),'MM' ),-1) from a_web_visit_origin;
oracle获得上个月的第一天日期(符合当地的日期格式):
select data_dt ,TO_CHAR (ADD_MONTHS(TRUNC( to_date(data_dt, 'YYYY-MM-DD'),'MM' ),-1),'YYYY-MM-DD') from a_web_visit_origin;
oracle获得上个月当天日期:
select data_dt ,TO_CHAR (ADD_MONTHS(TRUNC( to_date(data_dt, 'YYYY-MM-DD') ),-1),'YYYY-MM-DD') from a_web_visit_origin;
select data_dt ,ADD_MONTHS(TRUNC( to_date(data_dt, 'YYYY-MM-DD'),'MM' ),-1) from a_web_visit_origin;
oracle获得上个月的第一天日期(符合当地的日期格式):
select data_dt ,TO_CHAR (ADD_MONTHS(TRUNC( to_date(data_dt, 'YYYY-MM-DD'),'MM' ),-1),'YYYY-MM-DD') from a_web_visit_origin;
oracle获得上个月当天日期:
select data_dt ,TO_CHAR (ADD_MONTHS(TRUNC( to_date(data_dt, 'YYYY-MM-DD') ),-1),'YYYY-MM-DD') from a_web_visit_origin;
扩展资料:
日期和字符转换函数用法(to_date,to_char):
日期转化为字符串:select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') as nowTime from dual;
获取时间的年: select to_char(sysdate,'yyyy') as nowYear from dual;
获取时间的月: select to_char(sysdate,'mm') as nowMonth from dual;
获取时间的日:select to_char(sysdate,'dd') as nowDay from dual;
获取时间的时:select to_char(sysdate,'hh24') as nowHour from dual;
获取时间的分:select to_char(sysdate,'mi') as nowMinute from dual;
获取时间的秒:select to_char(sysdate,'ss') as nowSecond from dual;
设:
1、数据表名称为:TABLE1
2、TABLE1中的date字段名为:COLUMN1
获取去年到今年的上月底的数据的SQL如下:
select *
from TABLE1 t
where t.COLUMN1 = add_months(trunc(sysdate,'YYYY'),-12)
and t.COLUMN1 trunc(sysdate,'MM')
工具/材料:Management Studio。
1、首先在桌面上,点击“Management Studio”图标。
2、之后在该界面中,点击左上角“新建查询”选项。
3、接着在该界面中,输入获取今年的上一年和下一年(去年与明年)的sql语句“select year(getdate())-1 AS "去年" , year(getdate())+1 AS "明年"”。
4、然后在该界面中,点击左上方“执行”按钮。
5、最后在该界面中,显示获取今年的上一年和下一年(去年与明年)成功。
Select last_day(add_months(sysdate,-1)) from dual;得到上月最后一天
add_months(sysdate,-1) from dual;得到距当前时间一个月的时间(-1是上一个月,1是下一个月)
Select last_day(sysdate) from dual;得到当前月的最后一天
不知道你是否明白了?
select to_char(TO_DATE('20171123', 'YYYYMMDD'), 'yyyyiw') as week, --oracle求当年的第几周
to_char(TO_DATE('20171123', 'YYYYMMDD'), 'yyyyww') as week2, --oracle求当年的第几周
to_char(TO_DATE('20171123', 'YYYYMMDD'), 'yyyy') as year, --oracle求第几年
to_char(TO_DATE('20171123', 'YYYYMMDD'), 'yyyymm') as month, --oracle求当年的第几月
to_char(TO_DATE('20171123', 'YYYYMMDD'), 'yyyyddd') as day, --oracle求当年的第几天
to_char(TO_DATE('20171123', 'YYYYMMDD'), 'yyyyq') as quarter -- oracle求当年的第几季度
from dual
-----------
SELECT
to_char(sysdate,'day') 星期几,
to_char(SYSDATE,'ddd') 第几天,
to_char(SYSDATE,'ww') 第几周,
to_char(SYSDATE,'mm') 第几月,
to_char(SYSDATE,'q') 第几季
FROM dual