`

oracle 当前年 当前月 当前周 当前日

 
阅读更多
Oracle 当前月 当前周 当前年  2010-12-15 15:54:04|  分类: 数据库 -- oracle |  标签:t.c  reate_time  sysdate  trunc  where   |字号大中小 订阅 .

当月数据

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)



select
trunc(next_day(sysdate - 8, 1) + 1) as 周一,
trunc(next_day(sysdate - 8, 1) + 2) as 周二,
trunc(next_day(sysdate - 8, 1) + 3) as 周三,
trunc(next_day(sysdate - 8, 1) + 4) as 周四,
trunc(next_day(sysdate - 8, 1) + 5) as 周五,
trunc(next_day(sysdate - 8, 1) + 6) as 周六,
trunc(next_day(sysdate - 8, 1) + 7) as 周日
from dual;

-----查询当期日期之前一个月的日期
select trunc(sysdate) - rownum +1  as tdate
from all_objects
where rownum <=  (trunc(sysdate) - add_months(trunc(sysdate),-1 ))


-----当日9:00--21:00
select * from A where to_char(sysdate,'hh24:mi') between '09:00' and  '21:00'  where to_char(A.time,'yyyy-MM-dd)=to_char(sysdate,'yyyy-MM-dd);


-----oracle SQL语句中查询一个月内固定时间段的数据,比如9月1号到10月1号每天的八点到九点的呼叫数目
select * from table where createdate
       between to_date('2010-9-1','yyyy-MM-dd') and to_date('2010-10-1','yyyy-MM-dd')
      and EXTRACT(hour from createdate) between '8:00' and '9:00';

select a.日期,count(*) from 表名 a
where to_char(a.具体时间,'HH') <= '21' and to_char(a.具体时间,'HH')>='20'
group by a.日期
having to_char(a.日期,'YYYY-MM-DD')<='2011-10-01' and to_char(a.日期,'YYYY-MM-DD')>='2011-09-01'

-----当前月的天数
select trunc(sysdate) - rownum +1  as tdate
from all_objects
where rownum <= (trunc(sysdate)+1 - trunc(last_day(add_months(sysdate,-1))+1))

-----当月里的第一天,最后一天,总数
select (trunc(last_day(SYSDATE)) + 1 -
       add_months(trunc(last_day(add_months(sysdate, -1)) + 1), 0)) totalday,
       sysdate,
       add_months(sysdate, 0) aa,
       last_day(SYSDATE) lastday,
       last_day(add_months(sysdate, -1)) + 1 firstday
  from dual;
分享到:
评论

相关推荐

    oracle查询截至到当前日期月份所在年份的所有月份

    - `trunc(sysdate, 'dd')`:返回当前年的同月同日。 - `trunc(sysdate, 'yyyy')`:与`trunc(sysdate, 'yy')`相同,返回当年的第一天。 - `trunc(sysdate, 'd')`:返回当前星期的第一天,例如如果今天是星期一,则...

    Oracle日期类型处理

    一个日期值包括年、月、日、时、分、秒等部分,并且Oracle默认以内部格式存储日期值,这种格式可以精确到秒。在SQL查询中,可以通过`TO_CHAR`函数将日期转换为不同的字符串格式以便于展示或进一步处理。 #### 二、...

    oracle中to-date详细用法示例(oracle日期格式转换).docx

    可以使用 TRUNC 函数来返回当前年的 1 月 1 日、无时分秒,例如: ```sql SELECT TRUNC(SYSDATE, 'YEAR') FROM DUAL; ``` 这将返回当前年的 1 月 1 日、无时分秒。 12. 返回当前月的 1 日、无时分秒 可以使用 ...

    周、月、季、年统计SQL

    本文将详细介绍如何利用Oracle SQL来获取当前周、月、季、年的起始日期与结束日期,并进一步讨论如何基于这些日期进行数据统计。 #### 1. 获取当前周的起始与结束日期 - **当前周周一**:`select next_day(SYSDATE...

    Oracle日期函数集锦

    例如,`to_char(sysdate,'Y')`将返回当前年的最后一位数字,如'7',而`to_char(sysdate,'YY')`则返回两位数的年份,如'07',`to_char(sysdate,'YYY')`返回完整的四位数年份,如'007'。 2. `Q`:表示季度,1到3月为...

    Oracle常用函数大全

    例如,下面的SQL语句可以将当前日期截断到当前年的1月1日: ```sql select sysdate S1, trunc(sysdate) S2, trunc(sysdate,'year') YEAR, trunc(sysdate,'month') MONTH , trunc(sysdate,'day') DAY from dual; ``` ...

    oracle时间time转换器

    例如,`EXTRACT(YEAR FROM SYSDATE)`将返回当前年的数值。 4. TIMESTAMP类型:如果需要更精确的时间管理,Oracle还提供了TIMESTAMP类型,支持微秒级别的精度。转换方法与DATE类型类似,只是涉及到的函数可能会有所...

    Oracle中trunc()函数用法处理日期、数字类型数据

    这将返回当前年的第一天。 二、数字 TRUNC 函数 TRUNC 函数也可以截断数字类型的数据,返回截断后的数字值。其语法格式如下: ``` TRUNC(number,num_digits) ``` 其中,number 是需要截尾取整的数字,num_digits ...

    oracle日期处理.docx

    - 对于日期,`TRUNC`可以按照年、月、日、小时等不同元素进行截取。例如: - `TRUNC(SYSDATE, 'yyyy')`返回当年的第一天。 - `TRUNC(SYSDATE, 'mm')`返回当月的第一天。 - `TRUNC(SYSDATE, 'd')`返回当前星期的...

    Oracle关键字用法整合

    TRUNC(SYSDATE, 'd') -- 返回当前周的第一天 ``` **数值截断**: ```sql TRUNC(number, [decimals]) ``` 其中`number`是要截断的数字,`decimals`指定了小数部分保留的位数。 **示例**: ```sql TRUNC(89.9852, 2)...

    oracle 日期操作语句总结

    1. 查询当前年、月、周相关时间 Oracle提供了`TO_CHAR`函数与日期格式模型结合,用于提取或格式化日期的各个部分。例如: - 使用`'YYYY'`可以获取四位数的年份(如2023); - 使用`'YY'`或`'Y'`可以获取两位数的...

    Oracle的to-date函数.docx

    例如,`trunc(sysdate, 'YEAR')`会返回当前年的开始日期。 5. **毫秒级处理**:Oracle支持到毫秒级别的日期时间处理。`current_timestamp(5)`返回当前时间戳,包括毫秒。`to_char`函数可以用来格式化并提取这些毫秒...

    Oracle自我补充之trunc()函数的使用方法

    例如,TRUNC(sysdate, 'yyyy')会返回当前年的1月1日。 2. TRUNC(date, 'mm'):这将返回给定日期所在月份的第一天。所以,无论日期是哪一天,都会被截断到该月的1日。 3. TRUNC(date, 'd'):这个选项返回当前星期的...

    orcle时间查询

    - `TRUNC(SYSDATE,'MM')`:返回的是当前月份的第一天,即每个月的“第1日”,结果同样是一个`DATE`类型,但仅保留了年份和月份信息。 - `TRUNC(SYSDATE,'YYYY')`:返回的是当前年的第一天,结果是一个仅包含年份信息...

    数据迁移方法

    - **灵活性**:支持当前年及历史年的数据处理。 **缺点**: - **限制性**:恢复历史年数据前需预先建立对应的数据表。 - **相同问题**:与方法1.1相同的缺点依然存在。 ##### 方法2:利用Sybase的unload与rebuild...

    C#编程经验技巧宝典

    122 &lt;br&gt;0205 如何使用正则表达式验证两位小数 122 &lt;br&gt;0206 如何使用正则表达式验证一年的12个月份 123 &lt;br&gt;0207 如何使用正则表达式验证一个月的31天 123 &lt;br&gt;0208 如何使用正则表达式验证数字...

Global site tag (gtag.js) - Google Analytics