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 (
    65, 64, 62, 30, 29, 37, 53, 52, 33, 32, 49, 
    59, 58, 60, 42, 39, 40, 43, 56, 57, 55, 
    50, 51, 48, 54, 63, 66
  ) 
  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.00557

JSON explain

{
  "query_block": {
    "select_id": 1,
    "nested_loop": [
      {
        "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": 27,
          "filtered": 38.7396698,
          "index_condition": "cscart_product_prices.product_id in (65,64,62,30,29,37,53,52,33,32,49,59,58,60,42,39,40,43,56,57,55,50,51,48,54,63,66)",
          "attached_condition": "cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,1)"
        }
      }
    ]
  }
}

Result

product_id price
29 7998.00000000
30 13998.00000000
32 11999.60000000
33 6799.60000000
37 6398.00000000
39 16760.00000000
40 9160.00000000
42 3160.00000000
43 14760.00000000
48 7200.00000000
49 4800.00000000
50 8800.00000000
51 7200.00000000
52 5599.60000000
53 1559.60000000
54 10760.00000000
55 14360.00000000
56 8800.00000000
57 12360.00000000
58 31160.00000000
59 23960.00000000
60 59960.00000000
62 8398.00000000
63 7598.00000000
64 7598.00000000
65 3998.00000000
66 15598.00000000