1、创建测试表,create table test_date(v_date date);
创新互联公司服务项目包括科尔沁右翼前网站建设、科尔沁右翼前网站制作、科尔沁右翼前网页制作以及科尔沁右翼前网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,科尔沁右翼前网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到科尔沁右翼前省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
2、插入测试数据,
insert into test_date
select sysdate - level * 10 from dual connect by level 100
3、查询表中所有记录,select * from test_date,可以看到时间格式为年月日时分秒,
4、编写sql,将时间截取到年月,
select t.*,
to_char(v_date, 'yyyymm') v_date_mon1,
trunc(v_date, 'mm') v_date_mon2
from TEST_DATE t
oracle中的date类型字段,截取年份可用to_char函数。
工具:oracle 10g
步骤:
1、如emp表中有hiredate字段为date类型的数据。
2、截取其中的年份部分,用如下语句:
select empno,ename,job,mgr,to_char(hiredate,'yyyy'),sal,comm,deptno from emp;
3、运行后结果,可以看出年份已将截取出来了:
在Oracle中,要获得日期中的年份,例如把sysdate中的年份取出来,并不是一件难事。常用的方法是:Select to_number(to_char(sysdate,'yyyy')) from dual,而实际上,oracle本身有更好的方法,那就是使用Extract函数,使用方法是:Select Extract(year from sysdate) from dual,这种方法省掉了类型转换,看上去更加简洁。相应的,要取得月份或日,可以用select extract (month from sysdate) from dual和select extract (day from sysdate) from dual。 此方法获得的结果,是数值型的,你可以设置一个方法测试一下。
工具/材料:Management Studio。
1、首先在桌面上,点击“Management Studio”图标。
2、之后在该界面中,点击左上角“新建查询”选项。
3、接着在该界面中,输入获取今年的上一年和下一年(去年与明年)的sql语句“select year(getdate())-1 AS "去年" , year(getdate())+1 AS "明年"”。
4、然后在该界面中,点击左上方“执行”按钮。
5、最后在该界面中,显示获取今年的上一年和下一年(去年与明年)成功。