Autor | Zpráva | ||
---|---|---|---|
Toník Profil * |
#1 · Zasláno: 18. 4. 2021, 19:15:04
Zdravím,
chtěl bych se poradit. Mám SQL příkaz, který vypisuje produkty z dané kategorie nebo počet produktů z dané kategorie, potřebuji ale do něj doplnit, aby zobrazil pouze dostupné produkty. SQL vypadá třeba takto pro získání počtu produktů: SELECT COUNT(*) FROM ( SELECT pr.id, ( SELECT SUM(prstock.amount) FROM shop_products_stock prstock LEFT JOIN shop_products npr ON prstock.product_id=npr.id WHERE npr.active=1 AND (prstock.product_id=pr.id OR prstock.product_parent_id=pr.id) ) as total_stock FROM shop_products pr LEFT JOIN shop_products_category cat ON pr.id = cat.product_id WHERE pr.active=1 AND total_stock>0 GROUP BY pr.id ) d1 Ale vrátí mi to: Unknown column 'total_stock' in 'where clause' nevím, jak to mám přidat jako "filtr" do where. Díky za rady. |
||
Kajman Profil |
#2 · Zasláno: 18. 4. 2021, 20:42:16
Zkuste
WHERE pr.active=1 GROUP BY pr.id HAVING total_stock>0 Kdyby to nešlo, tak podmínku na total_stock dejte o závorku výše... WHERE pr.active=1 GROUP BY pr.id ) d1 WHERE d1.total_stock>0 |
||
Toník Profil * |
#3 · Zasláno: 19. 4. 2021, 10:19:44
Moc díky, having pomohlo :)
|
||
Časová prodleva: 1 rok
|
0