比较同一表中连续行的差异

k5ifujac  于 2021-07-26  发布在  Java
关注(0)|答案(2)|浏览(315)

我需要帮助比较sql查询中的数据。
我需要在计划组id中比较,与其他计划id相比,具有不同最小目标和最大目标的度量id详细信息是什么
例子:
我的意思是,我需要比较在同一个计划下,哪个计划度量的最小值和最大值是不同的。
如果值是:

另一个例子:

7vhp5slm

7vhp5slm1#

按所有三列分组

  1. select m.plan_id, m.plan_grp_id, m.measure_id
  2. from plan_measure m
  3. group by m.plan_id, m.plan_grp_id, m.measure_id
  4. having min(m.min_target) <> max(m.min_target) or min(m.max_target) <> max(m.max_target);
mlmc2os5

mlmc2os52#

看起来像

  1. SQL> with plan_measure (measure_id, min_target, max_target) as
  2. 2 (select 111, 10, 10 from dual union all
  3. 3 select 222, 20, 20 from dual union all
  4. 4 select 333, 30, 30 from dual union all
  5. 5 select 111, 33, 55 from dual union all
  6. 6 select 222, 20, 20 from dual union all
  7. 7 select 333, 30, 30 from dual union all
  8. 8 select 111, 10, 10 from dual union all
  9. 9 select 222, 20, 20 from dual union all
  10. 10 select 111, 10, 10 from dual
  11. 11 )
  12. 12 select measure_id
  13. 13 from plan_measure
  14. 14 group by measure_id
  15. 15 having min(min_target) <> max(max_target);
  16. MEASURE_ID
  17. ----------
  18. 111
  19. SQL>

我不知道是什么 plan 不过,这张table应该是这样的。这与 plan_measure 以任何明显的方式(至少对我来说不是)。

展开查看全部

相关问题