SQL语句如何判断一个日期在两个日期之间

 我来答
freechan10
2020-02-02 · TA获得超过2.9万个赞
知道小有建树答主
回答量:263
采纳率:68%
帮助的人:12.4万
展开全部

1、创建测试表,

create table test_date_bet(id varchar2(20),v_date date);


2、插入测试数据;

insert into test_date_bet values(1, sysdate-100);

insert into test_date_bet values(2, sysdate-10);

insert into test_date_bet values(3, sysdate-5);

insert into test_date_bet values(4, sysdate);

insert into test_date_bet values(5, sysdate-4);

commit;

3、查询表中全量数据;select t.*, rowid from test_date_bet t;

4、编写语句,查询sydate-5与sydate之间的记录;

   select t.*, rowid sec from test_date_bet t where v_date between sysdate-5 and sysdate;

百度网友4461b7e
推荐于2017-12-15 · TA获得超过925个赞
知道小有建树答主
回答量:541
采纳率:57%
帮助的人:238万
展开全部
这个并不难的,最简单的使用case when 判定就能实现。
如果是单表,直接可以这样写:
select case when 时间字段 between '需要判定的最小时间' and '需要判定的最大时间' then 'true' else 'false' end from 表1
我想楼主应该是想多表放在一起怎么判定时间吧,那么假设你有两张表,表使用ID做关联的,那可以这样写:
select case when 时间字段 between b.时间1 and b.时间2 then 'true' else 'false' end from 表1 a
join 表2 b on a.ID= b.ID
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式