![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 19.06.2013 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich!
Mam spory problem, w ogóle nie mam pomysłu już jak to zrobić. Mam dwie tabele, przyjmijmy nazwy tabela jeden oraz tabela dwa. W tabeli jeden mam id ludzi, a w tabeli dwa mamy komentarze, które zostały dodane do danego ludzika o tym samym id. I powiedzmy jest kilka komentarzy do jednego użytkownika, to będzie: id komentarz 73 adasadaa 73 asdasdsad 73 asdasdasda I wtedy wykonuje polecenie JOIN, lecz zamiast komentarze wyświetlać się pod użytkownikiem to wyświetlają mi się duplikaty użytkowników z tabeli dwa na taką ilość ile jest komentarzy do danego użytkownika. Jakie polecenie mam zastosować? Ja stosowałem to:
I wtedy ma głównej stronie wychodzą mi duplikaty. Proszę o pomoc. |
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
No i wszystko jest prawidlowo. Jak laczysz tabele, to pierwsza tabela "powieli" sie tyle razy ile masz połączen w drugiej.
Musisz dane pogrupowac odpowiednio, a potem wyswietlac jak sobie chcesz http://nospor.pl/grupowanie-wynikow.html ps: po grzyba w opisie wymyslasz nam, jak to jedna tabela sie nazywa JEDEN a druga DWA, podczas gdy w zapytaniu i tak uzywasz prawdziwych nazw.... |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 19.06.2013 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Okej, czyli link, który mi podałeś pomoże mi zmienić duplikowanie wpisów?
|
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Nie, jest to link ni z gruszki ni z pietruszki wklejony do tego postu.... (IMG:style_emoticons/default/wink.gif)
Tak, jest to link o tym, jak poprawnie przetrawic takie dane jak Twoje |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 19.06.2013 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Dobra, dobra :-)
Dzięki wielkie (IMG:style_emoticons/default/smile.gif) Kurda, ten przykład jest w zwykłym mysqlu. A ja tworzyłem wszystko w PDO, nie masz jeszcze czegoś ale z PDO? |
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
A co za roznica?? Zapytania będą takie same a rekordy przy pomocy PDO to chyba umiesz odebrac?
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 19.06.2013 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Umiem odebrać.
Tylko nie wiem czy dobrze wszystko przemienię ze zwykłego mysqla na PDO wg. skryptu. |
|
|
![]()
Post
#8
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Tylko nie wiem czy dobrze wszystko przemienię ze zwykłego mysqla na PDO wg. skryptu. Dopoki nie zrobisz to sie nie dowiemy.Ale skoro wszystko masz w PDO, jak sam napisales, to takie podstawy jak odebranie danych z bazy w PDO powinienies umiec zrobic z zamknietymy oczami. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 19.06.2013 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
A tak zapytam, istnieje jeszcze jakiś inny sposób?
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
To znaczy inny niż grupowanie? Nie rozumiem po co.
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 19.06.2013 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Dokładnie inny, niż grupowanie. I tak pewnie zrobię tym, lecz jestem ciekawy czy istnieje tylko ten jeden sposób czy jest ich X liczba.
|
|
|
![]()
Post
#12
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Z jakiej strony bys nie patrzyl, musi byc grupowanie. Takie czy siakie czy jeszcze inne, ale musi byc grupowanie. Moze byc robione na zywo, moze byc robione jak to pokazalem, ale tak czy siak musi byc grupowanie
ps: a nie, przepraszam, moze byc bez grupowania. Mozesz najpierw pobrać glowna tabele, a potem po kolei dla kazdego rekordu pobierac komentarze. Ale to jest tak bezsensowne i nieoptymalne, ze az sie wstydze ze o tym wspomnialem (IMG:style_emoticons/default/wink.gif) |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 19.06.2013 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Wciąż nie mogę tego zrobić, mam nadal powtórzone rekordy na głównej.
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 1 045 Pomógł: 141 Dołączył: 19.09.2006 Skąd: B-tów Ostrzeżenie: (0%) ![]() ![]() |
to pokaż zapytanie które napisałeś
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 19.06.2013 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#16
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Pokaz kod jak to robisz.
|
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 1 045 Pomógł: 141 Dołączył: 19.09.2006 Skąd: B-tów Ostrzeżenie: (0%) ![]() ![]() |
ORDER BY to sortowanie, a ty masz grupować czyli GROUP BY
|
|
|
![]()
Post
#18
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
@sazian nie mieszaj.... przeczytaj linka co podalem, to bedziesz wiedzial o czym mowa.
|
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
I wtedy wykonuje polecenie JOIN, lecz zamiast komentarze wyświetlać się pod użytkownikiem to wyświetlają mi się duplikaty użytkowników z tabeli dwa na taką ilość ile jest komentarzy do danego użytkownika. Możesz to potwierdzić/sprecyzować? Mam wrażenie, że chcesz osiągnąć inny efekt od rozwiązania proponowanego przez użytkowników. |
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 19.06.2013 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Trochę długo nie odpowiadałem, ale już opisuje wszystko.
A mianowicie, wpisy już się nie duplikują. Lecz, są jeszcze takie światełka, które duplikują się tyle razy ile wystąpi komentarz do danego wpisu. Wklejam pomoc:
Tak to wszystko wygląda.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 26.08.2025 - 05:53 |