Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: dublujące się wyniki zapytania z LEFT JOIN
Forum PHP.pl > Forum > Bazy danych > MySQL
emeres1
Witam,
  1. SELECT * FROM `comment` LEFT JOIN ratecomment ON comment.IDcomment = ratecomment.IDratecomment WHERE IDcomment = '5' ORDER BY commentdate DESC


W tabeli comment jak i ratecomment znajdują się dwa po dwa rekordy jednak zapytanie zwraca mi cztery.O co chodzi?Jak to naprawić?


pozdrawiam
mortus
Ciężko się domyśleć, ale chyba warunek złączenia (to co po ON) jest nieprawidłowy. Jak wyglądają tabele comment i ratecomment?
emeres1
Tak wyglądają tabelki.Złączenie bez ON?
comment:
IDcomment text author commentdate
5 ccccc dddddd 2011-06-17 20:37:43
5 aaaa bbbbb 2011-06-17 20:37:26
ratecomment:
IDratecomment commentup commentdown ratecommentdate
5 0 0 2011-06-17 20:37:43
5 0 0 2011-06-17 20:37:26
mortus
Jeśli to miała być relacja jeden do jednego (czy nawet jeden do wielu), to warunek złączenia jest w porządku. Natomiast ciekawi mnie, dlaczego dwa różne komentarze mają taki sam identyfikator (IDcomment)? Przecież powinny mieć różne identyfikatory, bo to przecież dwa różne komentarze, dodane przez dwóch różnych użytkowników w innym czasie. Zapytanie działa prawidłowo.
emeres1
ale bzdurę zrobiłem:) dzięki
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.