【发布时间】:2017-09-27 21:34:41
【问题描述】:
我有一个交易日期,需要从另一个表返回一个字段。
Table A Visit Bill Transaction Date
1 1 12/20/2016
如果代码日期在交易日期之后,我需要返回另一个代码表。
Table B Bill CodeID Effective Code Date Code
1 A 9/1/2015 ABCDE
1 B 9/1/2015 FGHI
1 C 9/1/2015 JKLM
1 A 10/01/2016 ZQMOP
1 B 10/01/2016 XYZNP
1 C 10/01/2016 EFGHI
我如何得到这个结果?
Vist Bill TransactionDate CodeID Code
1 1 12/20/2016 A ZQMOP
1 1 12/20/2016 B XYZNP
1 1 12/20/2016 C EFGHI
【问题讨论】:
-
到目前为止您尝试过什么?从上面的示例中,不应该返回任何一个,因为它们都不是在交易日期之后。
-
@Eric 对不起,我的意思是我需要返回 CodeID 和代码,其生效日期最接近交易日期。示例:由于交易日期是 2016 年 12 月 20 日,我需要 10/01/2016 代码。如果交易日期是 2015 年 9 月 2 日,我需要返回生效日期为 2015 年 9 月 1 日的代码。我还没有尝试过任何东西。我没有代码。
-
你的第一张桌子;它只包含一个值吗?根据该表中的其他内容,您问题的各种答案可能会产生意想不到的行数。
-
@Xedni 表 A 是一样的。表 B 我忘记添加账单了。我已经添加了。
标签: sql-server tsql field lookup