Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wynik selecta - wiele pól w jednym, połączone przecinkami
Foxx
post
Post #1





Grupa: Zarejestrowani
Postów: 896
Pomógł: 76
Dołączył: 15.11.2003
Skąd: Sosnowiec/Kraków

Ostrzeżenie: (0%)
-----


W jaki sposób można osiągnąć następujący efekt: załóżmy, że książka może mieć wielu autorów, mam tabelę książka i tabelę autor, w tej ostatniej jest pole ksiazka_id.

Chciałbym pobrać informację o książce tak, żeby dla każdej książki mieć 1 rekord mimo, że książka może mieć wielu autorów. Wynik chciałbym przestawić w następującej postaci:

ksiazka_id autorzy
45 2, 45, 56

Dzięki za wszelkie podpowiedzi.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Po pierwsze: masz zla strukutre. Powinny byc tabele:
KSIAZKA, AUTOR, KSIAZKA-AUTOR (ta tabela laczy ksiazke z autorem)

Po drugie: Gdy juz bedziesz mial poprawną strukture to mozesz osiagnac co cchesz przy pomocy GROUP BY oraz GROUP_CONCAT
Go to the top of the page
+Quote Post
Foxx
post
Post #3





Grupa: Zarejestrowani
Postów: 896
Pomógł: 76
Dołączył: 15.11.2003
Skąd: Sosnowiec/Kraków

Ostrzeżenie: (0%)
-----


Ja zawsze wymyślam uproszczone przykłady i zawsze to są głupie przykłady (IMG:style_emoticons/default/smile.gif) W rzeczywistości mam relację wiele do wielu, ale chciałem okroić temat żeby pytanie było prostsze.

Dzięki - group_concat pomogło.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.09.2025 - 14:45