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 (
    59482, 59481, 59480, 59479, 59478, 59477, 
    59476, 59475, 59474, 59473, 59472, 
    59471, 59470, 59469, 59468, 59467, 
    59466, 59465, 59464, 59463, 59462, 
    59461, 59460, 59459, 59458
  ) 
  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.00077

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 50 Using where

Result

product_id price
59458 1.69000000
59459 1.69000000
59460 1.69000000
59461 1.69000000
59462 1.69000000
59463 1.69000000
59464 1.69000000
59465 1.69000000
59466 1.69000000
59467 1.69000000
59468 1.69000000
59469 1.69000000
59470 1.69000000
59471 1.69000000
59472 1.69000000
59473 1.69000000
59474 1.69000000
59475 1.69000000
59476 1.69000000
59477 1.69000000
59478 1.69000000
59479 1.69000000
59480 1.69000000
59481 1.69000000
59482 1.69000000