可用自带函数month来实现。
如:
创建表及插入数据:
create table test(id int,
begindate datetime)
insert into test values (1,'2015-01-01')
insert into test values (2,'2015-02-01')
执行sql语句:
select id,MONTH(begindate) as month from test结果:
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;
运行上边这个
sysdate是当前日期时间
yyyy是年,四位
mm是月份,二位
dd是日期。二位
hh24是以24小时算小时
mi是分钟
ss是秒
--考虑到12月份+1,如果要跳转到下一年的一月的话,使用dateadd稳妥一些
select GETDATE() as "当前时间",
convert(int,convert(varchar(6),dateadd(m,(case when day(GETDATE())>=25 then 1 else 0 end) ,GETDATE() ),112)) as SSDate
在sql中怎样截取时间?
把日期截取为月份有以下几种办法:
1、日期为日期格式,这种最简单,使用Month()函数即可获取月份,如:
1
select month(getdate()) from dual
2、日期为yyyy-mm-dd格式的文本,这种情况下需要转换成日期格式再截取,如:
1
select TO_CHAR(to_date('2013-01-01', 'yyyy-MM-dd'), 'yyyyMM') dateStr from dual
3、日期格式为其他格式,如yyyymmdd或yyyy/mm/dd的,此类格式类似第二种格式可以用类似的语句进行查询,只是转换成日期的时候的格式不一样。
注:以上SQL均基于ORACLE数据库
以上就是关于如何提取sql中日期月份全部的内容,包括:如何提取sql中日期月份、请举例说明在sql中如何获取日期字段中的月份(oracle下)、SQL 查询当前日期,截取月份,并显示两位数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)