From c In oTable.AsEnumerable() _
Group Join p In oTable1.AsEnumerable() On c("LocalDate") Equals p("LocalDate") And c("firstname") Equals p("firstname") And c("lastname") Equals p("lastname") Into Group _
From p In Group.DefaultIfEmpty() _
Select Altigen = c, InboundShip = If(p Is Nothing, "0", p("InboundCount"))
Finally Did it in LINQ.Simple and Effective.