我有一个包含两列的主键的表。我想根据两个输入数组检索一组行,每个数组对应一个主键列。odp.net SQL查询从两个输入数组中检索一组行
select pkt1.id, pkt1.id2, ... from PrimaryKeyTable pkt1, table(:1) t1, table(:2) t2
where pkt1.id = t1.column_value and pkt1.id2 = t2.column_value
然后,我将这些值与odp.net中的两个int []绑定在一起。
这将返回我的结果行的所有不同组合。所以如果我期待13行我收到169行(13 * 13)。问题是t1和t2中的每个值都应该关联。值t2 [4]应与t1一起使用,而不是t2中的所有不同值。
使用不同的解决方案我的问题,但我想知道如果我的方法是错误的。任何人有任何关于如何解决这个最好的方法的指针?一种方法可能是在t1和t2中依次使用for循环访问每个索引,但我不知道什么会更有效。
编辑:其实不同的解决不了我的问题,它只是它的基础上我的输入值
我想要的结果收缩到绑定表中的位置。因此表(:1)中的索引4与表(:2)中的索引4相关。 我想知道是否有任何方法可以不使用pl/sql和for-loop – KTrum 2010-06-09 13:21:14