Autor | Zpráva | ||
---|---|---|---|
pavel1258 Profil * |
#1 · Zasláno: 8. 7. 2015, 17:49:06
Tabulky: categorie, articles, category_articles (tabulka pro m:n)
-mám na eshopu výpis produktů jedné konkrétní kategorie, třeba s id=123, a zobrazí se mě třeba 100 produktu v teto kategorii -chtěl bych ziskat seznam dalších kategorií, které obsahuji stejne produkty jako ta kategorie s id=123, idealne s poctem produktu, ktere maji ty dve kategorie (tedy ta s id=123 a nalezena) spolecne -v jednom sql dotazu ;) -jinak kazdy articles má vlastnost active=0/1 potrebuju aby se to vztahovalo jen na produkty s active=1 Prakticke zadani: mam dva typy kategorii, v jedne jsou kategorie, v druhe vyrobci. Navstevnik si zobrazi nejakou kategorii a na vysledne strance bych chtel mit hlasku "v teto kategorii jsou produkty techto vyrobcu:" moc dekuji za jakekoliv reseni, jestli to lze vubec nejak efektivne vyresit... |
||
tiso Profil |
#2 · Zasláno: 8. 7. 2015, 19:36:59
SELECT c2.name as manufacturer, count(p.id) as products FROM cat_prod cp JOIN prod p ON cp.prod_id = p.id AND p.active = 1 JOIN cat_prod cp2 ON p.id = cp2.prod_id AND cp2.cat_id <> cp.cat_id JOIN cat c2 ON cp2.cat_id = c2.id WHERE cp.cat_id = 3 GROUP BY c2.id; SELECT c2.name as manufacturer, count(p.id) as products FROM cat_prod cp JOIN prod p ON cp.prod_id = p.id AND p.active = 1 JOIN cat_prod cp2 ON p.id = cp2.prod_id JOIN cat c2 ON cp2.cat_id = c2.id AND c2.type = 'manufacturer' WHERE cp.cat_id = 3 GROUP BY c2.id; |
||
Časová prodleva: 10 let
|
0