1、打开plsql,连接上oracle数据库,使用sql语句创建一张测试表。
2、使用sql语句插入3行测试数据到上一步创建的测试表中,日期栏位使用系统当前时间插入。
3、执行完sql之后,记得点击提交按钮,提交更改到数据库保存,否则,数据不会真正存储到数据库中。
4、提交完之后,查询刚刚插入的数据,select
from
TestDate。
5、修改第一行Updatedate栏位的值,此时直接拼接日期格式的字符串更新,oracle是无法执行的。
6、修改第一行Updatedate栏位的值,将字符串的日期转换为日期类型,之后再修改,就可以更新了。
7、修改第一行Updatedate栏位的值,使用当前日期减去2天,直接减2即可。
可以将vs_date 使用时间函数 加上20个小时 和 37个小时 就可以了
然后使用between and 作为查询条件
如:
numtodsinterval函数 numtodsinterval(20,'HOUR')
还是使用numtodsinterval函数 参数second ,将vs_date截取到日期 ,在应用这个函数 构造开始和结束
就可以了
1、输入服务器地址、数据库登录用户名、登录密码,完成数据库登录 *** 作。
2、依次点击database—Schema Browser,打开对象浏览窗口。
3、找到要 *** 作的数据表,了解字段名及类型。
4、然后点击“Editor”返回编辑窗口,在该窗口中就可以输入sql语句,并测试运行,以检查sql语句书写是否正确。
5、要在sql语句中匹配日期型字段,就需要将sql语句中“字符”条件转换成日期,需要利用到系统自带的to_date()函数。
6、点击运行按钮,如下图所示sql语句运行结果。
1、创建测试表,
create table test_date(id int, v_date date);
2、插入测试数据
insert into test_date values (1, STR_TO_DATE('2016-01-02', '%Y-%m-%d'));
insert into test_date values (2, STR_TO_DATE('2019-01-02', '%Y-%m-%d'));
insert into test_date values (3, STR_TO_DATE('2019-11-02', '%Y-%m-%d'));
insert into test_date values (4, STR_TO_DATE('2019-11-14', '%Y-%m-%d'));
3、查询原始表的记录,select t from test_date t,
4、编写sql,限定两个日期,查询记录,
select from test_date t where DATE_FORMAT(v_date, '%Y-%m-%d') in ('2016-01-02','2019-11-02'),
select from 表 where 日期字段>='开始日期' and 日期字段<='截止日期' and convert(char(8),日期字段,108)>='开始时间' and convert(char(8),日期字段,108)<='截止时间'。
SELECT FROM 表明 WHERE 日期字段名 BETWEEN '20130101' AND '20130130'。
例如:
select from tb1 where dDate>='2010-11-05' and dDate<='2010-11-15'
and convert(char(8),dDate,108)>='8:00:00' and convert(char(8),dDate,108)<='9:00:00'
select from table1 where year(d)=2010 and month(d)=7 and day(d) between 1 and 31
and (Datepart(hour,d)>=22 or Datepart(hour,d)<6)
扩展资料:
SQL查询日期:
今天的所有数据:select from 表名 where DateDiff(dd,datetime类型字段,getdate())=0
昨天的所有数据:select from 表名 where DateDiff(dd,datetime类型字段,getdate())=1
7天内的所有数据:select from 表名 where DateDiff(dd,datetime类型字段,getdate())<=7
30天内的所有数据:select from 表名 where DateDiff(dd,datetime类型字段,getdate())<=30
本月的所有数据:select from 表名 where DateDiff(mm,datetime类型字段,getdate())=0
本年的所有数据:select from 表名 where DateDiff(yy,datetime类型字段,getdate())=0
参考资料:
以上就是关于oracle数据库 date时间类型查询昨天、前7天、前30天、前1年的数据,sql语句怎么写全部的内容,包括:oracle数据库 date时间类型查询昨天、前7天、前30天、前1年的数据,sql语句怎么写、sql语句日期时间函数、在Oracle使用sql语句中如何插入日期格式的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)