如何在teradata递归查询中使用?

如何在teradata递归查询中使用?,teradata,recursive-query,Teradata,Recursive Query,在下面的表格中 customer ID, code, start_date, end_date 124343, DCW, 2015-07-06, 2016-08-03 235432, ABC, 2015-04-26, NULL 235432, ABC, 2015-04-26, 2015-06-20 3242342, ABC, 2015-08-02, 2015-07-28 2332434, DCW, 201

在下面的表格中

customer ID, code,    start_date, end_date
 124343,     DCW,     2015-07-06, 2016-08-03
 235432,     ABC,     2015-04-26, NULL
 235432,     ABC,     2015-04-26, 2015-06-20
3242342,     ABC,     2015-08-02, 2015-07-28
2332434,     DCW,     2015-02-09, 2015-06-23
2332434,     DCW,     2015-06-23, NULL     
如何使用递归查询为每个customerID获取唯一代码的输出,
1.当客户ID在表中有多条记录的值在end_date且在end_date为null时,则仅记录的end_date为null
2.如果客户ID有多条记录的开始日期、结束日期和开始日期等于第一条记录的结束日期,则只有结束日期为空或未来日期大于今天日期的记录
3.结束日期超过今天的日期
所需输出

customer ID, code, start_date, end_date
 124343,     DCW,    2015-07-06, 2016-08-03
 235432,     ABC,   2015-04-26, null
3242342,     ABC,    2015-08-02, 2015-07-28
2332434,     DCW,   2015-06-23, null

欢迎来到SO!。格式说明-不要在列表中使用
,请使用格式标记(工具栏上的{})。您可能不需要为此递归,请尝试检查是否可以定义一个顺序,按照该顺序对要放在顶部的行进行排序,例如,
限定行数()(按customerID顺序分区,按结束日期DESC NULLS优先)=1
获取错误。应为ORDER BY子句后的RESET(重置)一词。发布您的sql,没有它我们无能为力。连接两个表以获取仅处于状态的客户ID。