![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 20.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Cześć, mam problem. Próbuje wyświetlić dane z bazy, id i name mają po 1 rekordzie, ale tagi to już rekordy przez co pętla while wykonuje się 2 razy powielając ten sam kod tylko za każdym razem zmieniając wartość tagi. Proszę o pomoc jak to rozwiązać, chce żeby kolejne rekordy z tagi wyświetlały się po przecinku a reszta kodu wykonywała się tylko raz.
Mój kod:
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 5.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Może tak?
-------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 1 319 Pomógł: 118 Dołączył: 26.11.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
masz po prostu bledne zapytanie, nie mozesz pobierac za pomoca inner join tagow i np. newsow, bo co bedzie, jak do jednego rekordu bedziesz mial 100tagow?
proponuje GROUP_CONCAT_WS odszukac w manualu MySql i korzystac z left joina -------------------- scriptun.com. Startup z poradnikami do gier ttp.zone i ttpzone.pl
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 20.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Szukam już od chwili i nic mi nie idzie, moje zapytanie wygląda tak:
ale efekt jest taki sam jak wcześniej ![]() podbijam Nikt nie ma pomysłów jak to zrobić ? Może ktoś ma inny pomysł jak te tagi mogę zrobić ? Teraz moja baza wygląda tak:
tabela tag_item zawiera powiązania. |
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Przecież wyraźnie Ci już napisano. Użyj grupowania oraz GROUP_CONCAT jeśli chcesz tylko i wyłącznie wyświetlić te tagi.Jeśli chcesz z nich robić linki czy inne formy, które wymagają większej ilość informacji o tagach to zrezygnuj z łączenia na siłę informacji o przedmiocie i jego tagach byle upchnąć to w jednym zapytaniu. Ludzie zrozumcie, że czasem sens ma użycie 2 lub większej ilości zapytań niż cudowanie z tworzeniem jednej kobyły, która wydajnościowo może być kilka/kilkanaście razy wolniejsza bądź wysyłała będzie mnóstwo niepotrzebnych danych powtarzających się.
-------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 20.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Chyba coś Ci się pomyliło, nie próbuje nic na siłę zrobić w 1 zapytaniu. Po prostu nie wiem w ogóle jak to rozwiązać dlatego tu pisze. Mimo wszystko dzięki za pomoc, spróbuję to zrobić na 2 zapytaniach.
Jak ktoś ma jeszcze jakieś pomysły, rozwiązania to będę wdzięczny. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 15:23 |