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 (
    10365, 10337, 10364, 10336, 10363, 10335, 
    10362, 10334, 10361, 10381, 10312, 
    10333, 10360, 10380, 10311, 10332, 
    10359, 10379, 10310, 10331
  ) 
  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.00036

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 (10365,10337,10364,10336,10363,10335,10362,10334,10361,10381,10312,10333,10360,10380,10311,10332,10359,10379,10310,10331)",
      "attached_condition": "cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,1)"
    }
  }
}

Result

product_id price
10310 3225.60000000
10311 3225.60000000
10312 3225.60000000
10331 518.70000000
10332 518.70000000
10333 518.70000000
10334 518.70000000
10335 518.70000000
10336 518.70000000
10337 518.70000000
10359 2121.60000000
10360 2121.60000000
10361 2121.60000000
10362 2121.60000000
10363 2121.60000000
10364 2121.60000000
10365 2121.60000000
10379 2763.44000000
10380 2763.44000000
10381 2763.44000000