• 25-09-2015, 00:23:19
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba arkadaşlar.

    2 birbiriyle ilgili tabloyu RIGHT JOIN ile listeliyorum ve WHILE ile döngüyo sokuyorum. Bu konuda bir problem yok fakat;

    mysql sorgusunda birbiri ile eşitlediğim alanlar tablo1'de sadece 1 adet, tablo2'de ise 5 adetten oluşuyor. Ben bu eşitlediğim alanıda echo ile yazdırmam gerekiyor. Fakat ekrana yazdırdığımda 5 adet olarak çıktı veriyor. DISTINCT ile teke indirmeye çalıştım ama sonuç alamadım.

    Anlatabildim mi bilmiyorum ama kısacası left,right,inner join ile listelenen yinelenen verileri sadece 1 kez yazdırmam gerek.

    Şimdiden teşekkür ederim.
  • 25-09-2015, 00:29:12
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Sorgunu ve tablo örneğini verirsen yardımcı olalım.
  • 25-09-2015, 00:45:31
    #3
    LadyArch3r adlı üyeden alıntı: mesajı görüntüle
    Sorgunu ve tablo örneğini verirsen yardımcı olalım.
    $listele	= $db->prepare("SELECT DISTINCT
    
    groupr.groupname,
    groupr.description,
    groupc.groupname,
    groupc.x1,
    groupc.value
    
    FROM groupr
    
    RIGHT JOIN groupc
    
    ON groupr.groupname=groupc.groupname");
    groupc tablosu


    groupname'de "bugün" adlı kayıt 1 tane


    groupr tablosu


    groupname'de "bugün" adlı kayıt 5 tane
  • 25-09-2015, 01:00:22
    #4
    sorgunun sonuna LIMIT 1 diyerek 1 tane döndürebilirsin. ORDER BY ekleyerek en son yada ilk ekleneni de alabilirsin.
  • 25-09-2015, 01:08:09
    #5
    LadyArch3r adlı üyeden alıntı: mesajı görüntüle
    sorgunun sonuna LIMIT 1 diyerek 1 tane döndürebilirsin. ORDER BY ekleyerek en son yada ilk ekleneni de alabilirsin.
    Sorguyu while ile döngüye sokuyorum. Dediğiniz gibi yaptığımda sadece 1 kaydı listeliyor. Diğer kayıtları listelemiyor.
  • 25-09-2015, 10:46:13
    #6
    GROUP BY kolon_adi şeklinde deneyin
    http://www.w3schools.com/sql/sql_groupby.asp
  • 26-09-2015, 12:51:19
    #7
    Suan pc basinda degilim ama arkadas iki tablonun birlesimide toplam 6 adet veriden bazilari ayni veri seklinde diyor saanrim. Bu ayni verileri array olarak karsilatir aynilarini sil
  • 30-09-2015, 22:55:51
    #8
    Arkadaşlar select ile iki alanı eşit olan verileri çekip while içerisinde while kullanarak ihtiyacımı giderdim.

    MX4 Pro cihazımdan Tapatalk kullanılarak gönderildi