| Autor | Zpráva | ||
|---|---|---|---|
| Poll55 Profil * |
#1 · Zasláno: 15. 12. 2010, 00:55:06
Dobry den,
Snazim se navrhnou optimalni databazi pro eshop. Mam tabulku s produkty a tabulku s kategoriemi. Ted resit problem s tim, ze kdyby kazdy produkt spadal pod jednu kategorii, tak bych do tabulky profukty pridal sloupecek kategorie a do ni vzdy Id dane kategorie. Bohuzel situace je jina ten samy produkt muze byt i v nekolika kateforiich. Bohuzel nevim v kolika.. Nemate s timhle nejake zkusenosti ? Neprijde mi rozumne, abych mel treba 30 sloupecku na mozne katerorie. Dekuji |
||
| Kcko Profil |
#2 · Zasláno: 15. 12. 2010, 01:11:24
tabulka
-- produktID | kategorieID tabulka -- produktID | nazev | cena ... tabulka -- kategorieID | nazev | ... |
||
| Poll55 Profil * |
#3 · Zasláno: 15. 12. 2010, 10:38:37
Mno jo, ale jak pak budu vyhledávát. neumím hledat produkty, které mají cenu pod 10000 a zároven jsou v dané kategorii.
Díky |
||
| __construct Profil |
#4 · Zasláno: 15. 12. 2010, 10:55:14 · Upravil/a: __construct
Poll55:
Bolo by to nejak takto: SELECT niečo FROM `produkty` WHERE `cena` < 10000 AND `id_kategoria` = nejaké číslo; Keďže nevieš zostaviť ani takýto jednoduchý dotaz tak sa budeš asi musieť naučiť SQL, alebo si zaplatiť niekoho kto Ti to urobí…
↓ Áno, máš pravdu - nevšimol som si To. On urobil návrh kde môže byť jeden produkt vo viacerých kategóriách |
||
| Poll55 Profil * |
#5 · Zasláno: 15. 12. 2010, 11:21:02
Ale podle Kcko
mám celkem tři tabulky. Jednu produktů, druho kategorií a třetí kde jsou spárované. a to tvym dotazem nedostanu. |
||
| Kajman_ Profil * |
#6 · Zasláno: 15. 12. 2010, 11:31:33
SELECT p.* FROM `produkty` p JOIN `produkty_v_kategorii` pk ON p.`produktID`=pk.`produktID` WHERE p.`cena` < 10000 AND pk.`kategorieID` = 42 |
||
| Poll55 Profil * |
#7 · Zasláno: 15. 12. 2010, 14:47:48
To vypadá hezky můžete mi prosím popsat co to znamená?
Select p.* // znamená vyber vše z tabulky produkty FROM `produkty` p // p je jakási proměnná že se jedná o položku z tabulky produkty JOIN `produkty_v_kategorii` pk // Otevři pro práci také tabulku produkty_v_kategorii a nahraj ji do proměnné pk ON p.`produktID`=pk.`produktID` //Tomuhle nerozumím WHERE p.`cena` < 10000 //podmínka že položky v tabulce produkty mají cenu menší než 10000 AND pk.`kategorieID` = 42 // A zároveň v tabulce produkty_v_kategorii je kategorie rovna 42? Prosím o vysvětlení řádku 4 Díky |
||
| xmark Profil |
#8 · Zasláno: 15. 12. 2010, 15:04:28 · Upravil/a: xmark
SELECT * FROM a JOIN b ON a.x = b.y Připojení tabulky b na základě podmínky definované za ON. Stačí si kliknout na JOIN v Kajmanově příspěvku. |
||
|
Časová prodleva: 16 let
|
|||
0