Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> pogrupowane dane w 1 query - da sie?
zalew
post 11.12.2003, 01:10:53
Post #1





Grupa: Zarejestrowani
Postów: 407
Pomógł: 0
Dołączył: 24.10.2002
Skąd: warszawa

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


taka struktura
Kod
kategorie

- id

- nazwa



produkty

- id

- nazwa

- kat_id

czy da sie jednym zapytaniem zwrocic taki wynik:
Kod
garnki

- garnek

- patelnia

- czajnik



sprzet rtv

- radio

- tv

- magnetowid



meble

- sofa

- fotel



itd...
??
bo ja juz nie mam sily :/


--------------------
Go to the top of the page
+Quote Post
adwol
post 11.12.2003, 01:42:27
Post #2





Grupa: Zarejestrowani
Postów: 691
Pomógł: 0
Dołączył: 6.08.2003

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


Pokaż dokładnie jakiej tabeli wynikowej oczekujesz.
Go to the top of the page
+Quote Post
DeyV
post 11.12.2003, 11:04:11
Post #3





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




wystarczy zwykły LEFT JOIN i dołączenie to tablei produktów nazw kategorii sortowane względem nazwy kategorii własnie
A potem, juz na poziomie php, przy wyświetlaniu, najperw sprawdzamy, czy wyświetlaliśmy już jakiś produkt z tej kategorii. Jeśli tak - wyświetlamy normalnie dane produktu.
Jeśli nie - wyświetlamy nagłówek kategorii a potem dopiero, normalnie, dane produktu z tego wiersza.


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
zalew
post 11.12.2003, 13:46:07
Post #4





Grupa: Zarejestrowani
Postów: 407
Pomógł: 0
Dołączył: 24.10.2002
Skąd: warszawa

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


wiesz.. z poziomu php to ja to puscielm 2 petle, jedna co listuje kategorie, i druga ktora listuje produkty nalezace do tej kategori.. banal.. ale zastanawia mnie czy da sie to puscic jednym query i jedna petla oparta na tym zapytaniu..bo mi nie udalo sie jeszcze.. tylko z powtarzaniem naglowka, i czy wlasnie da sie to zablokowac na poziome selecta.. zeby pod naglowkiem kategorii poakzalo wylistowane produkty dla tej kategorii, potem dla nastepnej itd...


--------------------
Go to the top of the page
+Quote Post
#sigsegv
post 11.12.2003, 18:51:24
Post #5





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 10.12.2003

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


[sql:1:c5d594aaeb]SELECT kategorie.nazwa, produkty nazwa FROM produkty,kategorie WHERE produkty.kat_id=kategorie.id ORDER BY kategorie.nazwa;[/sql:1:c5d594aaeb]

Mozesz ewentualnie chciec uzyc jeszcze DISTINCT


-----------------------------
[zmoderowane]
BzikOS: proszę korzystać z BBCode'u.
Go to the top of the page
+Quote Post
DeyV
post 11.12.2003, 21:17:18
Post #6





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Podane powyżej zapytanie, czyli dokładnie to o czym mówię, jest jedynym mozliwym sposobem rozwiazania tego problemu.
Zresztą warto sie zastanowić, jak miałoby wygladać odwoływanie sie do kolejnych wierszy, jeśli poszczególne wiersze miałyby różną budowę.


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
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 Wersja Lo-Fi Aktualny czas: 28.03.2024 - 22:43