Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Jak wyciągnąć wartości kolumny kilku rekordów do jednego pola?, grupowanie po ID i wyciąganie telefonów jako stringa
ky3orr
post
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 25.10.2004
Skąd: Wrocław

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


Witam wszystkich,

stanąłem przed następującym problemem:

-mam tabelę z Klientami, gdzie każdy ma pole ID,
-mam druga tabelę, gdzie każdy Klient ma tyle rekordów ile ma numerów telefonu (oczywiście jest także pole ID).

Zadanie polega na wyciągnięciu tabeli, w której są podane dane Klienta (z pierwszej tabeli) oraz dodatkowa kolumna, gdzie po przecinku maja pojawić się wszystkie telefony.

Jak się za to zabrać?
Jakimś podzapytaniem? Jakiś sposób na grupowanie?
Nie mam pojęcia jak ugryźć temat - może koledzy podpowiedzą...

pozdrawiam

Ten post edytował ky3orr 28.07.2010, 15:10:39


--------------------
yegomość KY3ORR
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
mkozak
post
Post #2





Grupa: Zarejestrowani
Postów: 78
Pomógł: 4
Dołączył: 21.03.2005

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


funkcja GROUP_CONCAT


--------------------
==============================================
Bo ja jestem Wróbelek Htmlek
==============================================
Go to the top of the page
+Quote Post
ky3orr
post
Post #3





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 25.10.2004
Skąd: Wrocław

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


Serdeczne dzięki za pomoc!

to jest to czego szukałem smile.gif

jeśliby ktoś potrzebował natchnienia to podrzucam prosty kodzik:

  1. SELECT kontrahentid, group_concat(DISTINCT concat_ws('',kontrahentphonedirectional,' ',kontrahentphonenumber) separator '; ') AS phone
  2. FROM kontrahentphone
  3. GROUP BY kontrahentid


group_concat zbiera razem nie puste pola zaznaczone jako parametr i scala je za pomocą separatora.
distinct usuwa zdublowane elementy.

pozdrawiam


--------------------
yegomość KY3ORR
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 19:03