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 (
    10329, 10356, 10376, 10309, 10330, 10357, 
    10377, 10310, 10331, 10358, 10378, 
    10311, 10332, 10359, 10379, 10312, 
    10333, 10360, 10380, 10334
  ) 
  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.00046

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": 20,
      "filtered": 99.23484039,
      "index_condition": "cscart_product_prices.product_id in (10329,10356,10376,10309,10330,10357,10377,10310,10331,10358,10378,10311,10332,10359,10379,10312,10333,10360,10380,10334)",
      "attached_condition": "cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,1)"
    }
  }
}

Result

product_id price
10309 3225.60000000
10310 3225.60000000
10311 3225.60000000
10312 3225.60000000
10329 518.70000000
10330 518.70000000
10331 518.70000000
10332 518.70000000
10333 518.70000000
10334 518.70000000
10356 2121.60000000
10357 2121.60000000
10358 2121.60000000
10359 2121.60000000
10360 2121.60000000
10376 2763.44000000
10377 2763.44000000
10378 2763.44000000
10379 2763.44000000
10380 2763.44000000