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.
MySQL JOIN Veri Yineleme Problemi
7
●388
- 25-09-2015, 00:29:12Kimlik doğrulama veya yönetimden onay bekliyor.Sorgunu ve tablo örneğini verirsen yardımcı olalım.
- 25-09-2015, 00:45:31LadyArch3r adlı üyeden alıntı: mesajı görüntüle
$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:22sorgunun sonuna LIMIT 1 diyerek 1 tane döndürebilirsin. ORDER BY ekleyerek en son yada ilk ekleneni de alabilirsin.
- 25-09-2015, 01:08:09Sorguyu while ile döngüye sokuyorum. Dediğiniz gibi yaptığımda sadece 1 kaydı listeliyor. Diğer kayıtları listelemiyor.LadyArch3r adlı üyeden alıntı: mesajı görüntüle
- 25-09-2015, 10:46:13GROUP BY kolon_adi şeklinde deneyin
http://www.w3schools.com/sql/sql_groupby.asp

