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 (
    10631, 10630, 10629, 10628, 10627, 10626, 
    10625, 10624, 10623, 10622, 10621, 
    10620, 10619, 10618, 10617, 10616
  ) 
  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.00056

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.23484039,
      "index_condition": "cscart_product_prices.product_id in (10631,10630,10629,10628,10627,10626,10625,10624,10623,10622,10621,10620,10619,10618,10617,10616)",
      "attached_condition": "cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,1)"
    }
  }
}

Result

product_id price
10616 1292.58000000
10617 1292.58000000
10618 1292.58000000
10619 1292.58000000
10620 1292.58000000
10621 1292.58000000
10622 1292.58000000
10623 1292.58000000
10624 1292.58000000
10625 1582.30000000
10626 1582.30000000
10627 1582.30000000
10628 1582.30000000
10629 1582.30000000
10630 1582.30000000
10631 1582.30000000