Birçok sorguları bir

2 Cevap php

Tamam, ben sadece bir tablo normalize bitirdim. Ne yaptığını ne zaman gerçekten dikkate almadı ben şimdi benim sql bilgisi ben bu yaklaşım nasıl gerçekten emin değilim, çok, çok sınırlı olduğunu olmak ... birçok ilişki bir tane olmasıdır.

Ben yabancı anahtar gruplama çalıştı, ancak yalnızca son eşleşen sonuç verir ve ben her ikisi de tek bir fk orada herhangi bir sonuç dönmek istiyorum.

İstenilen Çıktı:

   Site         Found On             Score
   example.com  sourece1, source2    400
   example.net  sourece1             23
   example.org  sourece2             23

Where: siteScoring.url = found on siteScoring.votes = score media.file_url = site

2 Cevap

Eğer MySQL 5 kullanıyorsanız + Geçerli GROUP BY sorguda Found On sütunu oluşturmak için (select yan tümce) GROUP_CONCAT(source) kullanabilirsiniz eğer

EDIT: benim hatam o MySQL 4.1 + bulunuyor: group_concat

Ayrıntılar kadar psuedo SQL geliyor:

  SELECT t.file_url,
         CONCAT_WS(',', ss.url) 'Found On',
         SUM(ss.votes)
    FROM MEDIA t
    JOIN SITESCORING ss ON ss. = m. --just missing JOIN criteria
GROUP BY t.file_url