简介:本文将详细介绍如何使用SQL编写查询语句以获取当前月份和年度的数据记录,涵盖日期函数与条件筛选技巧。
为了查询当月的数据,请使用以下SQL语句:`select * from table t where t.create_time >= TRUNC(SYSDATE, MM) and t.create_time <= LAST_DAY(SYSDATE)`。
对于当年数据的查询,可以执行如下命令:`select * from table t where t.create_time >= trunc(sysdate,YYYY) and t.create_time<=add_months(trunc(sysdate,YYYY),12)-1`
若需要获取本周(国外周日为一个星期的第一天)的数据,请使用以下语句:
```sql
where t.create_time >=trunc(sysdate,day)+1 and t.create_time<=trunc(sysdate,day)+6
```
对于国内周一作为一周第一天的情况,可以执行如下命令来查询本周数据:
```sql
where t.create_time >= trunc(next_day(sysdate-8,1)+1) and t.create_time <= trunc(next_day(sysdate-8,1)+7)
```
另外,若想列出当前周的每一天,可以使用以下SQL语句:
```sql
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;
```