oracle数据库 date时间类型查询昨天、前7天、前30天、前1年的数据,sql语句怎么写

oracle数据库 date时间类型查询昨天、前7天、前30天、前1年的数据,sql语句怎么写,第1张

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

参考资料:

SQL_百度百科

以上就是关于oracle数据库 date时间类型查询昨天、前7天、前30天、前1年的数据,sql语句怎么写全部的内容,包括:oracle数据库 date时间类型查询昨天、前7天、前30天、前1年的数据,sql语句怎么写、sql语句日期时间函数、在Oracle使用sql语句中如何插入日期格式的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10185657.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存