liermao12 2014-06-13 06:10 采纳率: 0%
浏览 1973

关于oracle关联表查询的sql语句

现在两张表,分别是表A,表B.

表A:

ID CONTENT STARTDATE ENDDATE
1 测试内容1 2014/6/1 2014/6/15
2 测试内容2 2014/5/25 2014/6/30
3 测试内容3 2014/6/8 2014/7/1
4 测试内容4 2014/6/10 2014/6/30

表B:
ID A_ID CONTENT MDATE
1 2 测试1 2014/6/5
2 2 测试3 2014/5/3
3 4 测试2 2014/6/7

表A的ID和表B的A_ID是主外键关系,现在的目的是:
查询表A,如果表A所对应的B表中,MDATE在表A的STARTDATE 和 ENDDATE 之间,则表A的该记录不显示。

最后查询结果为:
 ID CONTENT STARTDATE ENDDATE
1 测试内容1 2014/6/1 2014/6/15
3 测试内容3 2014/6/8 2014/7/1
4 测试内容4 2014/6/10 2014/6/30

求高手帮写sql语句。。。。

  • 写回答

1条回答

  • 缘与我无缘 2014-06-13 09:56
    关注

    select id, content, startdate, enddate
    from (select A.*, B.Id as bid
    from A
    left join B on A.id = B.a_Id
    and to_char(B.Mdate, 'yyyy/mm/dd') >= to_char(A.Startdate, 'yyyy/mm/dd')
    and to_char(B.Mdate, 'yyyy/mm/dd') <= to_char(A.Enddate, 'yyyy/mm/dd')) t
    where t.bid is null
    order by id

    先查询在mdate在范围之内的,然后通过验证bid是否为空过滤

    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog