【问题标题】:Oracle Sql query to get manager to employee relationOracle Sql 查询以获取经理与员工的关系
【发布时间】:2012-08-28 10:22:08
【问题描述】:

我有一个这样的表结构,其中定义了员工与经理的关系

EMP_ID SUP_ID START_DATE END_DATE emp1 sup1 2012 年 1 月 1 日 2012 年 1 月 30 日 emp1 sup2 2012 年 2 月 1 日 2012 年 2 月 28 日 emp2 sup1 2012 年 1 月 1 日 2012 年 2 月 28 日

我需要查询以获取截至 sysdate 的经理下的所有员工。

如果我在 jan 使用 mgr id sup1 执行它,它应该返回 emp1 和 emp2
如果它在 2 月,它应该只返回 emp2。

我尝试使用连接编写查询,但它不起作用,我对在哪里放置什么条件感到困惑。

【问题讨论】:

  • SUP_ID 的值是否与 EMP_ID 来自同一域 - 即表是否表示层次结构?

标签: sql oracle oracle10g


【解决方案1】:

下面的方法肯定可以吗?

select * from employees
where sysdate between start_date and end_date
and sup_id = 'sup1';

【讨论】:

    【解决方案2】:
    select * from employees where sup_id = 'sup1' and start_date = trunc(sysdate);
    

    【讨论】:

      猜你喜欢
      • 2022-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-18
      相关资源
      最近更新 更多