У меня 2 DataTables:Эффективно выберите строки из 2 DataTables соответствующих сумму для столбца
- : Кредиторская задолженность содержит набор счетов-фактур, которые я должен заплатить. (InvNo-Amount)
- Дебиторская задолженность: содержит набор счетов-фактур, которые я должен получить. (InvNo-сумма)
Я должен создать процесс, в котором я должен выбрать максимальные строки из обеих таблиц таким образом, чтобы их сумма была равна.
Пример:
Payables Receivables
-------- -----------
INV1 120 ABC1 100
INV2 50 ABC2 30
INV3 80 ABC3 20
INV4 30 ABC4 70
Я могу создать комбинацию (INV1 + INV2 + INV4 = 200) & (ABC1 + ABC2 + ABC4 = 200)
, так что оба матча.
идея которая у меня есть для реализации является:
- Найти счета-фактуры с одинаковым количеством из обоего таблиц & выбрать их.
- Найти изделие с максимальной суммой из любой таблицы. Постарайтесь сопоставить эту сумму, выбирая строки (один или несколько) из другой таблицы.
Но я знаю, что в какой-то момент эта логика не будет соответствовать максимальным счетам-фактурам. Я не могу вспомнить техническое название таких операций.
Ищет стартеры либо как алгоритм, либо псевдокод или подход.
Inv3/xInv3 не имеют отношения к делу? Вам нужно сравнить только максимальные строки или вы хотите найти наивысшие значения суммы, имеющие совпадение в другой таблице? –
№.они различны. –
Идея состоит в том, чтобы соответствовать максимальному количеству с обеих сторон. –