这应该很简单,但是我的大脑不知怎么回事停止了工作。
我有两个相关的表:
表1:
ID (PK), Value1
表格2:
BatchID, Table1ID (FK to Table 1 ID), Value2
示例数据:
表格1:
ID Value1
1 A
2 B
表格2:
BatchID Table1ID Value2
1 1 100
2 1 101
3 1 102
1 2 200
2 2 201
现在,对于表1中的每条记录,我想在表2中进行匹配,但只匹配最近的一条记录(批次ID是连续的)。上述示例的结果如下:
Table1.ID Table1.Value1 Table2.Value2
1 A 102
2 B 201
问题很简单,如何限制与Table2的连接结果。在SO上有类似的问题,但找不到像我的这样。这是一个MySQL上的例子: LIMITing an SQL JOIN 我接受任何方法,尽管速度仍然是主要优先级,因为它将是一个大型数据集。