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 (
    4078, 5006, 4112, 4110, 4109, 4111, 4113, 
    4114, 4116, 5076, 4136, 4219, 4121, 
    4120, 4122, 4129, 4119, 4080, 4079, 
    5883, 4075, 4076, 4089, 4074
  ) 
  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.00050

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": 49,
      "filtered": 97.95918274,
      "index_condition": "cscart_product_prices.product_id in (4078,5006,4112,4110,4109,4111,4113,4114,4116,5076,4136,4219,4121,4120,4122,4129,4119,4080,4079,5883,4075,4076,4089,4074)",
      "attached_condition": "cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,1)"
    }
  }
}

Result

product_id price
4074 7.720000
4075 39.690000
4076 36.750000
4078 175.000000
4079 1.940000
4080 37.800000
4089 15.660000
4109 15.990000
4110 15.990000
4111 15.990000
4112 15.990000
4113 15.990000
4114 15.990000
4116 85.690000
4119 34.560000
4120 32.000000
4121 21.600000
4122 20.000000
4129 5.560000
4136 16.180000
4219 11.610000
5006 6.170000
5076 32.350000
5883 449.000000