Comprare two datatables, then eliminated Database values are dependent on one another

Hi
First need to compare two datable
if name are the same
then check value in Dt1 for “AAA”
then check in Dt2 value is “False”
then removed from dt2 value .

Dt1
Name /surname/address/value
ABC/CDA/AAA/True
BCD/DEF/BBB/True
CDF/CBA/CCC/True

Dt2
Name/Value
ABC/False
BCD/True
CDF/True

Output should be
BCD/True
CDF/True

Thanks in advance
Happy automation
Andy

@Andy5

try this

outputdt=dt2.AsEnumerable.Where(Function(row) dt1.AsEnumerable.Any(Function(r) r(“value”).ToString.Equals(row(“value”).ToString))).copytodatatable

cheers

Hi @Shiva_Nikhil , Thanks for reply but in Dt1 i have to check value address column if it has “AAA” then need to remove.

in addition to above we have several options:

Non-LINQ: Data Join

  • Join DataTable
  • Filter DataTable on the Join Result

EDITED and incorporated:

LINQ - inner Join
assign activity:
dtResult =

(From d1 in dt1.AsEnumerable()
Join d2 in dt2.AsEnumerable()
On d1("Name").toString.ToUpper.Trim Equals d2("Name").toString.ToUpper.Trim
Where Not d1("Address").toString.ToUpper.Trim.Equals("AAA")
Where Not d2("value").toString.ToUpper.Trim.Equals("FALSE")
Select r = d2).CopyToDataTable

Only dt1 NON-Adress AAA are further checked

LINQ - Match
assign activity:
dtResult =

(From d2 in dt2.AsEnumerable()
Let n = d2("Name").toString.ToUpper.Trim
Where dt1.AsEnumerable.Any(Function (d1) d1("Name").toString.ToUpper.Trim.Equals(n) AndAlso Not d1("Adress").toString.ToUpper.Trim.Equals("AAA"))
Where Not d2("value").toString.ToUpper.Trim.Equals("FALSE")
Select r = d2).CopyToDataTable

Handling empty results we do:
:ambulance: :sos: [FirstAid] Handling of The source contains no DataRows exception - News / Tutorials - UiPath Community Forum

Thansk you @ppr it working perfect.

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.