新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
获取月(两位):select to_char(sysdate,'mm') from dual
我们提供的服务有:网站设计、成都网站设计、微信公众号开发、网站优化、网站认证、邵原ssl等。为成百上千企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的邵原网站制作公司
那你就把指定的日期to_date()成date,如下:
select to_char(to_date('2004-05-07 13:23:44','yyyy-mm-dd hh24:mi:ss'),'mm') from dual
首先表需要有一个字段,是日期型的。
举例:test表,字段有
name varchar2(10),
value number(6),
vdate date.
查询2010年12月份的数据
select * from test where to_char(vdate,'yyyy-mm')='2010-12';
当月数据
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
1、创建测试表,
create table test_date_2(id int, v_date date);
2、插入测试数据
insert into test_date_2 values(1,sysdate);
insert into test_date_2 values(2,sysdate-20);
insert into test_date_2 values(3,sysdate-30);
insert into test_date_2 values(4,sysdate-40);
commit;
3、查询表中全量数据,select t.* from test_date_2 t;
4、编写语句,查询当月份的上一个月;
select t.*, add_months(v_date,-1) v_date2 from test_date_2 t;
你好:这个查询方式有很多;
select * from tableName where DATEPART(mm, theDate)
=DATEPART(mm, GETDATE()) and DATEPART(yy, theDate)
= DATEPART(yy, GETDATE());
-----------可以用以下方法查找
select * from tableName t where t.dateTime =to_DATE('yyyy-mm','2014-12')
select a.员工编号,a.员工姓名,a.类别,a.分公司,c.薪酬合计\x0d\x0afrom 表名 a\x0d\x0ainner join\x0d\x0a(\x0d\x0a select 员工编号,最大月份=max(月份)\x0d\x0a from 表名\x0d\x0a group by 员工编号\x0d\x0a) b\x0d\x0aon a.员工编号=b.员工编号 and a.月份=b.最大月份\x0d\x0ainner join\x0d\x0a(\x0d\x0a select 员工编号,薪酬合计=sum(薪酬)\x0d\x0a from 表名\x0d\x0a group by 员工编号\x0d\x0a) c\x0d\x0aon a.员工编号=c.员工编号