Oracle数据库中对时间类型字段的检索

如上图所示,假设这是我Oracle数据库中表A中的数据,其中"时间起"字段与"时间止”字段都是date类型。现在我已经知道了主键为1的记录,如何根据主键为1的记录中的时间... 如上图所示,假设这是我Oracle数据库中表A中的数据,其中"时间起"字段与"时间止”字段都是date类型。

现在我已经知道了主键为1的记录,如何根据主键为1的记录中的时间字段,来检索出主键为4的记录来呢?

望大神给个思路!
展开
 我来答
june2ling
2013-10-23 · 超过16用户采纳过TA的回答
知道答主
回答量:61
采纳率:0%
帮助的人:42.2万
展开全部

按您补充的描述,应该是通过当前起止日期查出所在的季度,那么可通过当前起止日期是否在另一日期范围内,如是则为需要找出的季度(即1,2,3都可以找到4,因为它们的日期都在4之间)。

select t2.a 主键,t1.a,t1.b,t1.c from table t1,table t2

where t1.b<=t2.b AND t1.c >= t2.c

and t1.a <> t2.a                           --如果需要过滤季度本身的,加此条件

and t2.a = '1'                                --如果需要指定主键为1,加此条件 

效果如下

ZESTRON
2024-09-04 广告
在Dr. O.K. Wack Chemie GmbH,我们高度重视ZESTRON的表界面分析技术。该技术通过深入研究材料表面与界面的性质,为提升产品质量与可靠性提供了有力支持。ZESTRON的表界面分析不仅涵盖了相变化、化学反应、吸附与解吸... 点击进入详情页
本回答由ZESTRON提供
badkano
推荐于2016-04-07 · 知道合伙人体育行家
badkano
知道合伙人体育行家
采纳数:144776 获赞数:885368
团长

向TA提问 私信TA
展开全部

主要你也没说根据什么条件来查

先随便给你写个

select * from A where 时间起 in (select 时间起 from A where 主键=1)
追问



详细的表述还是如图:


情况是这样的,


假设记录1~3分别代表1月、2月、3月的具体记录


而记录4表示的是第一个季度 (因为记录4的时间起始字段是1/1~3/31)


我现在是想根据1~3中任何一条记录,比如我现在有一条记录,这条记录是1月份的,我想根据这个记录来查询出这个季度的记录,即记录4。不知道我这种表述是否清楚。


谢谢您的回答。

追答

我弄了几条数据

 

你看是这个意思吗

create table a 
(id int,
begindate date,
enddate date);
insert into a values (1,to_date('2013-01-01','yyyy-mm-dd'),to_date('2013-01-31','yyyy-mm-dd'));
insert into a values (2,to_date('2013-02-01','yyyy-mm-dd'),to_date('2013-02-28','yyyy-mm-dd'));
insert into a values (3,to_date('2013-03-01','yyyy-mm-dd'),to_date('2013-03-31','yyyy-mm-dd'));
insert into a values (4,to_date('2013-01-01','yyyy-mm-dd'),to_date('2013-03-31','yyyy-mm-dd')); 
commit;

执行

select t2.* from a t1,a t2 where t1.id=1 and t1.begindate >=t2.begindate and t1.enddate <=t2.enddate and t2.id<>1

结果

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
晏子530
2013-10-24 · 超过40用户采纳过TA的回答
知道小有建树答主
回答量:182
采纳率:0%
帮助的人:96.3万
展开全部
select * from a where ... and rownum<=1 order by A desc
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式