2015-09-28 2 views
1

Мой листинг показывает несколько раз тот же результат и следующий раз несколько раз. Счетчик полностью отличается, так как некоторые показаны в 3 раза, следующие 8 или 5 раз. Я не мог найти свою ошибку, почему она показывает.Внутренний Присоединиться несколько раз

Код PHP работает, потому что я использую его для другого проекта и просто изменил запрос MYSQL.

My SQL

SELECT p1.kArtikel,p1.cName, p1.cKurzBeschreibung, p1.dLetzteAktualisierung, p1.cSeo, 
    p2.kartikelpict,p2.nNr,p2.cPfad, 
    p3.fVKNetto,p3.kKundengruppe, 
    p4.dStart 
FROM tartikel AS p1 
INNER JOIN tartikelpict AS p2 ON p1.kArtikel = p2.kArtikel 
INNER JOIN tpreise AS p3 ON p2.kArtikel = p3.kArtikel 
INNER JOIN tartikelsonderpreis AS p4 ON p3.kArtikel = p4.kArtikel 
WHERE DATE(dStart) > (NOW() - INTERVAL 120 DAY) 
    AND p3.kKundengruppe = 1 
ORDER BY p4.dStart DESC 
LIMIT 50; 

enter image description here

+1

'группу by' что-то? – Kisaragi

+0

Если вы получаете несколько строк результатов, это потому, что в таблицах, с которыми вы соединяетесь, имеется несколько совпадений. Таким образом, вы получаете все комбинации. – Barmar

+0

Barmar is right - выберите все столбцы p1, p2, p3, p4, и вы увидите несколько совпадений, которые отличаются в столбцах, которые вы не выбрали. – outofmind

ответ

1

Вы должны использовать Distinct statement

Select distinct column_name from table 
+0

Хотя эта ссылка может ответить на вопрос, лучше включить части ответа здесь и укажите ссылку для справки. Ответные ссылки могут стать недействительными, если связанная страница изменится. –

+0

исправлено спасибо – CDrosos

Смежные вопросы