SQL bilenler subselect işleminin yeri geldiğinde ne kadar önemli olduğunu bilirler sqldeki subselect işlemini linq’da nasıl yapıldığını göreceğiz.
Bu örneğimizde customers(müşteriler) adındaki tablomuzdaki kayıtları orders(siparişler) adındaki tabloda kaydı bulunmayan müşterileri getiren örnek linq sorgusuna allta ulaşabilirsiniz.
1 2 3 | var res = from c in customers where !orders.Select(o => o.CustomerID).Contains(c.CustomerID) select c; |
2.Yol
1 2 3 4 5 6 | var res = from c in customers join o in orders on c.CustomerID equals o.customerID into customerOrders where customerOrders.Count() == 0 select c; |
Üstteki her iki linq sorgumuzda aynı işi yapmaktadır, orders(siparişler) tablosunda kaydı bulunmayan customers(müşteriler) listeleyen bir linq sorgusudur.