SQL dotaz na výběr min / max ceny

Martin13
Člen | 1
+
0
-

Zdravím,
mám tu menší problém. Potřebují vybrat min a max cenu ( pak budu potřebovat i ať se vyberou produkty, které mají cenu větší než x a menší než x ). Problém, je v tom, že produkty mají i slevy + mají varianty.
Databáze vypadá takto https://ctrlv.cz/…/18/i7SX.png

Teď mi dotaz vratí 400 / 900. Nebere to žádnou roli na to, že produkt může mít slevu. A nenapadá mě jak to do toho připojit.

return $products->select('MIN(:product_prices.price) AS minPrice, MAX(:product_prices.price) AS maxPrice')
           ->where('(:product_prices.valid_from <= NOW() OR :product_prices.valid_from IS NULL) AND
                    (:product_prices.valid_to >= NOW() OR :product_prices.valid_to IS NULL)')
           ->where(':product_prices.product_id IN ?', $products->fetchAll());

Nějaké nápady jak to napsat v SQL ?

kiri
Člen | 11
+
0
-

Odkaz je uz neplatny.
Asi by bolo lepsie poslat nejaky maly dump z databaze.

Takze v prvom rade treba nejaky subdotaz, ktory vrati id-cka produktov s ich vyslednymi cenami (po zlave atd.) ???
A z tohoto subdotazu vyselektovat iba tie, ktore maju cenu < x a > y ???

Treba to asi trosku rozviest.

Editoval kiri (25. 7. 2018 16:11)