oracle怎么获取本月 oracle获取上个月

你知道oracle怎么查 本周,本月,和上月的数据吗

当月数据

创新互联公司长期为成百上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为榆社企业提供专业的网站设计、成都做网站,榆社网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。

select * from table t

where t.create_time

=TRUNC(SYSDATE, 'MM')

and

t.create_time=last_day(SYSDATE) create_time为你要查询的时间

当年数据

select * from table t

where t.create_time

=trunc(sysdate,'YYYY')

and

t.create_time=add_months(trunc(sysdate,'YYYY'),12)-1

本周(国外周日为一个星期第一天)

where t.create_time =trunc(sysdate,'day')+1 and

t.create_time=trunc(sysdate,'day')+6 本周(国内周一为一个星期第一天)

where t.create_time =trunc(next_day(sysdate-8,1)+1) and

t.create_time=trunc(next_day(sysdate-8,1)+7)+1

在oracle里,怎么取得本周,本月,本季度

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

Oracle SQL 获取本月内的所有周一

最近遇到业务需求,需要按周统计数据。

思考再三想到可以使用每周周一来计算。

故写出如下获得系统当前月份所有周一的语句。

select * from (

--转化成周一去重

select distinct trunc(t.day,'iw') as mon from (

--获取本月所有日期集合

SELECT trunc(sysdate, 'mm') + LEVEL - 1 DAY

FROM DUAL

CONNECT BY trunc(sysdate, 'mm') + LEVEL - 1 =

last_day(trunc(sysdate))

)t

)a

--移除非本月的周一

where trunc(a.mon, 'mm') =  trunc(sysdate, 'mm')

ORDER BY MON

注:

trunc(sysdate,'iw') 语句可以获取本周周一的日期 (date类型)

trunc(sysdate,'iw') +1 可以获取本周周二的日期。

以此类推

(可以把sysdate换成其它时间)

Oracle 如何获得上个月或者下个的月份

SELECT TO_CHAR(ADD_MONTHS(SYSDATE, -1), 'MM') AS 上月,

TO_CHAR(SYSDATE, 'MM') AS 本月,

TO_CHAR(ADD_MONTHS(SYSDATE, 1), 'MM') AS 下月

FROM DUAL

oracle如何获取当前月份,去掉前面的0

如果字符串只有开头有零,而字符串中间没有0,那么可以使用replace(字符串,'0','')

如果0开头最长的位数不长,那么可以逐个判断。

比如我可能知道这里面最长的就是连续5个0开头的,这样我就判断如果遇到5个0开头的就截掉前五位,4个0开头截掉前四位,3个0开头截掉前三位,一直到1,逐个判断使用case when可以完成.但是如果最长的0开头个数不确定,就比较麻烦了。

新闻名称:oracle怎么获取本月 oracle获取上个月
当前URL:https://www.cdcxhl.com/article38/hishpp.html

成都网站建设公司_创新互联,为您提供营销型网站建设云服务器网站建设外贸网站建设移动网站建设响应式网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都做网站