SQL - 选择大于/小于特定日期的行

时间:2015-08-13 18:44:46

标签: sql

我有一个名为edi_premise的表。我在同一个表中有四个名为customer_id,action_id,req_reason_code和trans_date的字段。

我想选择在re__reason_code字段中具有“ORV”的行之后的action_id字段中具有“673_03”的所有客户。

简而言之,日期(req_reason_code字段中的“ORV”)< date(action_id字段中的“673_03”)。

如何编写查询以选择这些行?

1 个答案:

答案 0 :(得分:0)

一种非常简单的方法是使用条件聚合。有点难以分辨数据格式是什么,但有点像:

select customer_id
from edi_premise
group by customer_id
having max(case when action_id = '673_03' then dated end) >
       min(case when req_reason_code = 'ORV' then dated end);