SELECT 
  cscart_product_prices.product_id, 
  MIN(
    IF(
      cscart_product_prices.percentage_discount = 0, 
      cscart_product_prices.price, 
      cscart_product_prices.price - (
        cscart_product_prices.price * cscart_product_prices.percentage_discount
      )/ 100
    )
  ) AS price 
FROM 
  cscart_product_prices 
WHERE 
  cscart_product_prices.product_id IN (
    112329, 112328, 112327, 112321, 112287, 
    112286, 112285, 112284, 112283, 112282, 
    112281, 112280, 112279, 112278, 112277, 
    112276, 112275, 112274, 112273, 112272
  ) 
  AND cscart_product_prices.lower_limit = 1 
  AND cscart_product_prices.usergroup_id IN (0, 1) 
GROUP BY 
  cscart_product_prices.product_id

Query time 0.00078

Explain
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE cscart_product_prices range usergroup,product_id,lower_limit,usergroup_id usergroup 9 40 Using where

Result

product_id price
112272 1.69000000
112273 1.69000000
112274 1.69000000
112275 1.69000000
112276 1.69000000
112277 1.69000000
112278 1.69000000
112279 1.69000000
112280 1.69000000
112281 1.69000000
112282 1.69000000
112283 1.69000000
112284 1.69000000
112285 1.69000000
112286 1.69000000
112287 1.69000000
112321 1.69000000
112327 1.69000000
112328 1.69000000
112329 1.69000000