Sql ve Linq ile İlişkili Tablolardan Kayıt Sayısı Bulmak

Kategoriler ve Sayfalar isimli iki tablomuz olduğunu ve bu iki tablo Kategori.Id ile Sayfalar.KatId arasında bir ilişki olduğunu varsayalım. Kategori tablomuzda Id ve Kategori alanları var. Sayfalar tablomuzda ise ekstradan integer tipinde KatId isimli bir yapımız var. Diyagram aşağıdaki gibidir.

Sql ile Kategorilere ait sayfa sayılarını listeleyen sorgumuz.

SELECT Kategoriler.*, (select count(Sayfalar.Id) from Sayfalar where Sayfalar.KatId=Kategoriler.Id) AS SayfaSayisi FROM Kategoriler ORDER BY SayfaSayisi DESC

Linq ile Kategorilere ait sayfa sayılarını listeleyen sorgumuz.

var kategoriler = (from kat in db.Kategoriler
                               join sayfa in db.Sayfalar on kat.Id equals sayfa.KatId into g
                               select new KategoriSayfaSayisi
                               {
                                   Id = kat.Id,
                                   KategoriAdi = kat.KategoriAdi,
                                   SayfaSayisi = g.Count()
                               }).ToList();

Sonuç:

Asp.Net'te Excele Veri Aktarma İşlemi - Export Data to Excel Önceki Yazı

Asp.Net'te Excele Veri Aktarma İşlemi - Export Data to Excel

GoDaddy'de Plesk Panel Üzerinde Ücretsiz SSL Sertifikası Kurulumu Nasıl Yapılır? Sonraki Yazı

GoDaddy'de Plesk Panel Üzerinde Ücretsiz SSL Sertifikası Kurulumu Nasıl Yapılır?

Yorum/Soru Yazın