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 (
    99969, 99955, 99968, 99967, 99952, 99948, 
    99923, 99922, 99917, 99915, 99914, 
    99913, 99906, 99867, 99791, 99788, 
    99694, 99678, 99519, 99435
  ) 
  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.00058

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
99435 1.69000000
99519 1.69000000
99678 1.69000000
99694 1.69000000
99788 1.69000000
99791 1.69000000
99867 1.69000000
99906 1.69000000
99913 1.69000000
99914 1.69000000
99915 1.69000000
99917 1.69000000
99922 1.69000000
99923 1.69000000
99948 1.69000000
99952 1.69000000
99955 1.69000000
99967 1.69000000
99968 1.69000000
99969 1.69000000