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 (
    4135, 4823, 4832, 4814, 4819, 4820, 4821, 
    4818, 4816, 4822, 4817, 4815, 4827, 
    4825, 4831, 4830, 4829, 4839, 5061, 
    5060, 4835, 4837, 4836, 5111
  ) 
  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.00062

JSON explain

{
  "query_block": {
    "select_id": 1,
    "table": {
      "table_name": "cscart_product_prices",
      "access_type": "range",
      "possible_keys": ["usergroup", "product_id", "lower_limit", "usergroup_id"],
      "key": "product_id",
      "key_length": "3",
      "used_key_parts": ["product_id"],
      "rows": 48,
      "filtered": 100,
      "index_condition": "cscart_product_prices.product_id in (4135,4823,4832,4814,4819,4820,4821,4818,4816,4822,4817,4815,4827,4825,4831,4830,4829,4839,5061,5060,4835,4837,4836,5111)",
      "attached_condition": "cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,1)"
    }
  }
}

Result

product_id price
4135 27.810000
4814 85.000000
4815 88.360000
4816 53.000000
4817 53.000000
4818 53.000000
4819 115.750000
4820 115.240000
4821 153.090000
4822 80.000000
4823 438.440000
4825 345.000000
4827 320.000000
4829 125.000000
4830 98.250000
4831 165.130000
4832 592.540000
4835 90.000000
4836 175.000000
4837 25.000000
4839 550.000000
5060 125.000000
5061 100.000000
5111 519.750000