我有以下数据表结构:
EFFT_DT|TYPE|CODE|VALUE
例如,这些可以是数据记录:
EFFT_DT |TYPE |CODE|VALUE
------------------------------
01-APR-2014|TYPE_A|01 |Apple
01-APR-2014|TYPE_A|02 |Pear
01-APR-2015|TYPE_A|02 |Orange
01-APR-2016|TYPE_B|A |OTHERS
01-APR-2012|TYPE_B|B |Tropical Fruits
问题:我需要能够查询此表中的记录并通过传入a)日期b)检索VALUE的代码来检索最新的有效日期记录。
例如,我可以通过a)15-apr-2014 b)02并比较EFFTDT和CODE来检索Pear。我也可以通过a)20-apr-2015 b)02并比较EFFTDT和CODE来检索Orange。这意味着截至2014年6月15日,第一条记录被标记为Pear,随后更改为Orange。
我还可以通过a)01-apr-2012 b)B和02传递记录,并在最终被标记为Pear或Orange之后被标记为热带水果,然后传递另一个日期记录。
高级别:我打算首先根据type_A的参数来查询VALUE并检查它是否为空,如果为NULL,则查询type_B以检索VALUE。
还有其他方法可以做到吗?
赞赏!