folder Tahribat.com Forumları
linefolder Bilgisayarla İlgili Diğer Konular
linefolder Sql De Distinc Kullanıcam Ama Diğer Sutunlarda Nasıl Gelecek ?



Sql De Distinc Kullanıcam Ama Diğer Sutunlarda Nasıl Gelecek ?

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    zeybekustasi
    zeybekustasi's avatar
    Kayıt Tarihi: 24/Mayıs/2012
    Erkek

    Merhaba kolay gelsin,

    Malesef sorumun cevabını bulamadım. Googleye düzgün soramadım bir türlü.

    Şimdi benim 10 kaydım var her biri 5 sutunlu olsun.

    Bir kolon tekrar ediyor bu kolonda tekrar edenlerden en yeni olan bir satırı alacağım.

    Onun için startDate ye göre orderby ile sıraladım şimdi yapmam gereken id si tekrar edenlerden ilkini almak.

    Bunun için distinc var ama,  Select(x=>x.Id)Distinc() deyince adece id leri getiriyor.

    Ama benim bütün kolonlara ihtiyacım vaer.

    Hepsini select içine yazıp distincin hepsine göre sıralaması aşırı saçma geliyor.

    Anlamamışta olabilirim.

    Kullanacağım şey istediğim koşula göre satırları teke düşürmeli.

    Nedir bunun yolu ?

    zeybekustasi tarafından 21/Eyl/15 15:32 tarihinde düzenlenmiştir

    https://www.youtube.com/watch?v=WC3-71NKwPw
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    LuCiFeR
    LuCiFeR's avatar
    Kayıt Tarihi: 25/Eylül/2005
    Erkek

    var distinct = ProductList.Distinct();

    böyle olabilirmi acaba ?

  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    zeybekustasi
    zeybekustasi's avatar
    Kayıt Tarihi: 24/Mayıs/2012
    Erkek
    LuCiFeR bunu yazdı

    var distinct = ProductList.Distinct();

    böyle olabilirmi acaba ?

    Şuan hangi kolona göre listeleyecek ki ?

    ProductList.Distinct(Id); dense id si aynı olanların ilkini alsa tamam :)

    Tabi böyle bir kullanım yok ef de

     

    1 a

    1 b

    2 a

    2 c

     

    varsa sonuç:

    1a

    2a

    Olmalı. id si aynı olanların ilkini alan bir linq sorgusu gerekiyor.

     

    zeybekustasi tarafından 21/Eyl/15 15:43 tarihinde düzenlenmiştir

    https://www.youtube.com/watch?v=WC3-71NKwPw
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    LuCiFeR
    LuCiFeR's avatar
    Kayıt Tarihi: 25/Eylül/2005
    Erkek

    zamanında kullanmısım eski projelrden arayıp buldum denemedım yanı muhtemelen ıdlere gore tekilleştiriyordur diye düşünüyorum sen denedınmı ?

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    zeybekustasi
    zeybekustasi's avatar
    Kayıt Tarihi: 24/Mayıs/2012
    Erkek

    Şöyle hallettim,

    Önce sıraladım.

    Sonra sıraladığım tabloda distinc yaptım kriter olan id leri listeye attım. Artık her id den bir tane var.

    Sonra o id ile birlikte sıralı tabloda where kodu içinde şart yazıp firstalldefault ile ilkini aldım hallettim.

    Evet anlamadınız biliyorum :D

    Buyrun,

     list = list.OrderBy(x => x.StartDate);
                var IdList = list.Select(x => x.EmployeeId).Distinct().ToList();
    
                List vmList=new List();
                foreach (var x in IdList)
                {
                   var item = list.Where(x => x.EmployeeId == x).FirstOrDefault();
                   vmList.Add(item);
                }

     

     

     

    zeybekustasi tarafından 21/Eyl/15 16:28 tarihinde düzenlenmiştir

    https://www.youtube.com/watch?v=WC3-71NKwPw
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    zeybekustasi
    zeybekustasi's avatar
    Kayıt Tarihi: 24/Mayıs/2012
    Erkek
     list = list.GroupBy(g => g.EmployeeId)  
                .Select(s => s.First())   
                .ToList();

    Buda unbalanced hocanın güzel bir çözümü :) Bunu kullanıyorum.


    https://www.youtube.com/watch?v=WC3-71NKwPw
Toplam Hit: 629 Toplam Mesaj: 6
sql