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 (
    12928, 12921, 12929, 12910, 12911, 12915, 
    12919, 12931, 12932, 12933, 12934, 
    12935, 12936, 12937, 12938, 12939, 
    12940, 12941, 12942, 13031
  ) 
  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.00080

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.94493103,
      "index_condition": "cscart_product_prices.product_id in (12928,12921,12929,12910,12911,12915,12919,12931,12932,12933,12934,12935,12936,12937,12938,12939,12940,12941,12942,13031)",
      "attached_condition": "cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,1)"
    }
  }
}

Result

product_id price
12910 900.00000000
12911 900.00000000
12915 900.00000000
12919 900.00000000
12921 900.00000000
12928 900.00000000
12929 900.00000000
12931 998.00000000
12932 998.00000000
12933 998.00000000
12934 998.00000000
12935 998.00000000
12936 998.00000000
12937 998.00000000
12938 998.00000000
12939 998.00000000
12940 998.00000000
12941 998.00000000
12942 998.00000000
13031 1797.27000000