LINQ ile Join&Group ve ilk kaydı seçme sorgusu
İki tabloyu join ile birleştirip, bir alana göre gruplama ve diğer tablodan ilk kaydı seçme sorgusu
Örnek üzerinden gidelim.
Elimizde 2 tablo olsun.
Yazarlar ve yazarların yazıları.
Şimdi, her bir yazarın son yazısını Linq sorgusu ile çekelim:
var yazilar = (from p in db.yazaryazilar group p by p.YazarId into grp let max = grp.Max(g => g.Id) from p in grp join y in db.yazarlar on p.YazarId equals y.Id where p.Id == max orderby p.Id descending select new { Id = p.Id, Baslik = p.Baslik, Foto = y.Foto, Yazar = y.AdSoyad }).Take(10);
Yazının id ve baslik bilgisini, yazarların da foto ve ad soyad bilgilerini bu sorguyla çekebiliriz.
Siz bu sorguyla oynayarak; daha değişik sonuçlar elde edebilirsiniz. Örneğin, okunma sayılarına göre yazarların yazılarını getirebilirsiniz.
Kolay gelsin.
#linq #join #group #select #ilk-satır #first-row