Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Grupowanie kilku kolumn względem siebie, z trzech kolumn wynik 1 2 3 zamiast 111 222 333
joordan
post
Post #1





Grupa: Zarejestrowani
Postów: 51
Pomógł: 1
Dołączył: 15.06.2010

Ostrzeżenie: (10%)
X----


Siedzę dzisiaj cały dzień i nie mogę znaleźć rozwiązania. Próbowałem łączyć trzy zapytania w jedno, zrobić to na tablicach wielowymiarowych, próbowałem zrobić to na kilku pętlach i wspomóc to jakimś wyrażeniem w if. Nie mam pojęcia jak uzyskać zamierzony efekt. Czy to w ogóle jest możliwe...?


Gdy zapytanie piszę w ten sposób wychodzą mi jakieś głupoty.

  1. $zapytanie= mysql_query("SELECT kolor1, kolor2, kolor3 FROM przedmiot GROUP BY kolor1 AND kolor2 AND kolor3");
  2. while($zap= mysql_fetch_array($zapytanie))
  3. {
  4. echo '<p>'.zap[0].'</p><p>'.zap[1].'</p><p>'.zap[2].'</p>'
  5. }




Powiedzmy że tabela wygląda tak

kolor1 | kolor2 | kolor3
| 2 | 3 | 4 |
| 3 | 3 | 1 |
| 2 | 1 | |
| 3 | 1 | 3 |
| 2 | 1 | 3 |

I chcę z niej wybrać kolor1, kolor2, kolor3

W tej postać
1
2
3
4

Zamiast
2
3

1
3

1
3
4

Ten post edytował joordan 27.04.2013, 22:46:21
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
pmir13
post
Post #2





Grupa: Zarejestrowani
Postów: 282
Pomógł: 89
Dołączył: 12.04.2011

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


Jeśli chodzi o wypisanie możliwych kolorów z trzech różnych kolumn to wystarczy:

  1. SELECT DISTINCT(kolor1) AS kolor FROM przedmiot
  2. UNION SELECT DISTINCT(kolor2) AS kolor FROM przedmiot
  3. UNION SELECT DISTINCT(kolor3) AS kolor FROM przedmiot
  4. ORDER BY kolor
Go to the top of the page
+Quote Post

Posty w temacie


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: 14.10.2025 - 17:15