Hai bisogno di aiuto con una query di join di fronte a Inner utilizzando LINQ
-
05-07-2019 - |
Domanda
Ho due tabelle in un set di dati XML. T1, T2. Ognuna delle tabelle ha una colonna ID.
T1 ha un elenco di clienti T2 ha un elenco di ordini
Voglio creare una query LINQ che restituisca solo l'ID dei clienti che non hanno ordini. In altre parole, gli ID cliente che non esistono nella tabella T2.
Oh sì, sto usando C #
Grazie!
Soluzione
Penso che funzionerà (per favore adattati ai tuoi DataSet):
var query = from c in T1
where !(from o in T2 select o.CustomerID)
.Contains(c.CustomerID)
select c;
Altri suggerimenti
Ciò richiede un join esterno e un controllo su null.
var result = from c in Customers
join d in Details on d.CustomerID equals c.ID into g
where !g.Any()
select c;
Hai solo bisogno di noi una clausola where e tutto:
T1.Where( item1 => T2.All( item2 => item1.ID != item2.ID ) );
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow