楼上的只统计了一个月的吧
成都创新互联公司专注于网站建设|成都网站维护|优化|托管以及网络推广,积累了大量的网站设计与制作经验,为许多企业提供了网站定制设计服务,案例作品覆盖塔吊租赁等行业。能根据企业所处的行业与销售的产品,结合品牌形象的塑造,量身设计品质网站。
WITH t AS
(SELECT ROWNUM
FROM DUAL
CONNECT BY ROWNUM = 12)
SELECT TO_CHAR (LAST_DAY (TO_DATE ( TO_CHAR (SYSDATE, 'YYYY')
|| LPAD (TO_CHAR (ROWNUM), 2, 0),
'YYYYMM'
)
),
'YYYY-MM'
)
|| '月',
TO_CHAR (LAST_DAY (TO_DATE ( TO_CHAR (SYSDATE, 'YYYY')
|| LPAD (TO_CHAR (ROWNUM), 2, 0),
'YYYYMM'
)
),
'DD'
)
|| '天'
FROM t
直接全选复制粘贴运行
首先,要先将你的日期格式转换成日期格式,在oracle里,求两个日期之间的天数可以用下边的语句:
select floor(to_date('20100722235959','yyyymmddhh24miss') - to_date('20100722000000','yyyymmddhh24miss')) from dual;
但是你的答案,是两个日期如果是同一天,则算为一天
所以
select floor(to_date('20100722235959','yyyymmddhh24miss') - to_date('20100722000000','yyyymmddhh24miss'))+1 from dual;
只要在后边加1就行了
select to_date('2018-08-12','yyyy-mm-dd')-to_date('2018-01-01','yyyy-mm-dd')+1 from dual
替换前边2018-08-12的日期就行,其他勿动
select to_char(last_day(sysdate),'dd') from dual
也可以将sysdate替换为任意时间,以计算当天所在月份天数。
甲骨文公司简介:
oracle一般指甲骨文公司
甲骨文股份有限公司(Oracle)是全球大型数据库软件公司,总部位于美国加州红木城的红木岸。在2008年,甲骨文股份有限公司是继Microsoft及IBM后,全球收入第三多的软件公司。Oracle数据库产品为财富排行榜上的前1000家公司所采用,许多大型网站也选用了Oracle系统。甲骨文股份有限公司于1989年正式进入中国,在北京、上海、广州和成都均设立了分支机构。 2016年1月,甲骨文表示会收购网站数据追踪服务商AddThis。2016年2月,甲骨文收购了云计算创业公司Ravello Systems。2017年6月7日发布的2017年美国《财富》500强,甲骨文公司排名第81位。2017年6月,《2017年BrandZ最具价值全球品牌100强》公布,甲骨文公司排名第46位。
可以使用sql语句,将起始时间与结束时间相减就可以了,语句如下:
select TO_NUMBER(
TO_DATE('2018-6-5','yyyy-mm-dd hh24:mi:ss')- TO_DATE('2018-5-31','yyyy-mm-dd hh24:mi:ss'))AS 相差天数 from dual;
扩展资料:
注意事项:
1、在使用Oracle的to_ date函数来做日期转换时,可能会直觉地采用"yyyy-MM-dd HH:mm:ss"的格式作为格式进行转换,但是在Oracle中会引起错误:“ORA 01810格式代码出现两次”。
如: select to_ date(2005-01-01 13:14:20','yyy-MM-dd HH24:mm:ss') from dual;
原因是SQL中不区分大小写, MM和mm被认为是相同的格式代码,所以Oracle的SQL采用了mi代替分钟。
select to_ date(2005-01-01 13:14:20'yyyy-MM-dd HH24:mi:s') from dual;
2、另要以24小时的形式显示出来要用HH24
select to_ char(sysdate,'yyy-MM-dd HH24:miss') from dual;//mi是分钟
select to_ char(sysdate,'yyy-MM-dd HH24:mm:ss') from dual://mm会显示月份