![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 9 Dołączył: 9.09.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie, pojawił mi się lekko skomplikowany jak dla mnie problem.
Stworzyłem 3 tabele:
I przy przykładowo takich danych: Cytat Kategorie 1 Nazwa1 OZNACZENIE 2 Nazwa2 DRUGIEOZNACZENIE 3 Nazwa3 TRZECIE Przedmioty 1 Przedmiot1 File.rar Thumb1.png 2 Przedmiot2 foo.rar Thumb2.png PrzedmiotyDoKategorii 1 1 1 2 1 2 3 2 1 4 2 2 5 2 3 chcę wyświetlić to w takiej formie: Cytat Przedmiot1 (DOMYŚLNEOZNACZENIE OZNACZENIE DRUGIEOZNACZENIE) Przedmiot2 (DOMYŚLNEOZNACZENIE OZNACZENIE DRUGIEOZNACZENIE TRZECIE) "Przedmioty.Nazwa (Kategorie.Oznaczenie[, Kategorie.Oznaczenie, ...])" Póki co.. dla samego działania zrobiłem to tak:
Wiem, że jest to niepoprawne.., ale nie wiem jak to złączyć w jedno zapytanie. Byłbym wdzięczny gdybyście mi pomogli, bo to prawdopodobnie da zmieścić się w 2-4 linijki. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Jedno zapytanie z LEFT JOIN a potem w php grupujesz jak chcesz. Tu masz przyklad
http://nospor.pl/grupowanie-wynikow.html -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
Etam, użyj GROUP_CONCAT
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
żadne etam.... w linku co podalem jest też przykład z GROUP_CONCAT
![]() ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 9 Dołączył: 9.09.2008 Ostrzeżenie: (0%) ![]() ![]() |
Póki co jakoś wyszło coś takiego:
Z tym, że jest pewien problem.. Gdy wpisuje ten SQL w PHPMyAdmin to.. ID mam: 1, 1 (Przy jednym przedmiocie, dwóch kategoriach), a gdy wypisuje print_r, to wyświetla mi, że ID idą: 1, 2.. przez co muszę index tablicy nazywać przez nazwę, a nie przez ID. Ale.. to nadal są tylko ID z tej poprzedniej tabeli ;/ A ja tu mam trzy tabele, nie dwie. Jeszcze spróbuję z tym group_concat. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Ale.. to nadal są tylko ID z tej poprzedniej tabeli ;/ A ja tu mam trzy tabele, nie dwie. Zero włączenia zarowki w głowie tylko clonowanie kodu z przykładu.... skoro masz trzy tabele to w LEFT JOIN musisz dodać też tą trzecią - logiczne
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 9 Dołączył: 9.09.2008 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki wielkie. Jedno zapytanie, zawsze lepsze od trzech. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 18.07.2025 - 01:43 |