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 (
    24521, 24522, 24523, 24524, 24525, 24526, 
    24527, 24528, 24529, 24530, 24531, 
    24532, 24533, 24534, 24535, 24536
  ) 
  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.00039

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": 16,
      "filtered": 99.99243164,
      "index_condition": "cscart_product_prices.product_id in (24521,24522,24523,24524,24525,24526,24527,24528,24529,24530,24531,24532,24533,24534,24535,24536)",
      "attached_condition": "cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,1)"
    }
  }
}

Result

product_id price
24521 0.00000000
24522 4600.00000000
24523 1700.00000000
24524 569800.00000000
24525 791600.00000000
24526 52300.00000000
24527 121600.00000000
24528 600.00000000
24529 400.00000000
24530 800.00000000
24531 7500.00000000
24532 48031500.00000000
24533 748400.00000000
24534 67700.00000000
24535 94900.00000000
24536 0.00000000