Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> zliczanie ilość produktów w danej kategorii
DeyV
post
Post #1





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




Hej.
zastanawaiłęm sie, czy nie dać jakiegoś mądrzejeszgo tematu, ale chyba taki jest najbardziej obrazowy.
Akcja toczy się na MySQL, gdzie mamy 2 tabele, produkty i kategorie.
Każdy produkt, poza id i nazwą, ma informacje o tym, do jakiej kategorii należy, oraz 1 pole dodatkowe - flagę, mogąć przyjmować wartość 0 lub 1.
Zadanie polega na tym, by wyświetlić listę kategorii, wraz z 2 liczbami dotyczącymi ilości produktów należących do tej kategorii, osobno jednak licząc produkty o fladze 0, a osobno - 1.
Przykład struktury bazy:
Kod
# Struktura tabeli dla  `kategorie`

CREATE TABLE kategorie (

  id int(11) NOT NULL auto_increment,

  nazwa varchar(100) NOT NULL default '',

  PRIMARY KEY  (id)

) TYPE=MyISAM;

# Zrzut danych tabeli `kategorie`

INSERT INTO kategorie VALUES (1, 'kategoria 1');

INSERT INTO kategorie VALUES (2, 'kategoria 2');

INSERT INTO kategorie VALUES (3, 'kategoria 3');

# --------------------------------------------------------

# Struktura tabeli dla  `produkty`

CREATE TABLE produkty (

  id int(11) NOT NULL auto_increment,

  nazwa varchar(100) NOT NULL default '',

  kat_id int(11) NOT NULL default '0',

  flaga tinyint(4) NOT NULL default '0',

  PRIMARY KEY  (id),

  KEY kat_id (kat_id,flaga)

) TYPE=MyISAM;

# Zrzut danych tabeli `produkty`

INSERT INTO produkty VALUES (1, 'produkt 1', 1, 0);

INSERT INTO produkty VALUES (2, 'produkt 2', 1, 0);

INSERT INTO produkty VALUES (3, 'produkt 3', 1, 1);

INSERT INTO produkty VALUES (4, 'produkt 4', 2, 0);


Moim marzeniem winksmiley.jpg byłoby otrzymać wynik w postaci:

Kod
|id | nazwa         | produkt_flag_0    | produkt_flag_1   |

|---+---------------+-------------------+------------------|

| 1 | kategoria 1   |         2         |          1       |

|---+---------------+-------------------+------------------|

| 2 | kategoria 2   |         1         |          0       |

|---+---------------+-------------------+------------------|

| 3 | kategoria 3   |         0         |          0       |

------------------------------------------------------------


W pierwszej chwili zadanie wydaje się banalne. Ale ... chyba takie nie jest. A zresztą przekonajcie sie sami winksmiley.jpg


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post

Posty w temacie


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: 19.08.2025 - 06:50