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 (
    9976, 9977, 9978, 9979, 9954, 9955, 9956, 
    9957, 9958, 9959, 9960, 9961, 9962, 
    9963, 9964, 9965, 9966, 9967, 9968, 
    9969
  ) 
  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.00048

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 (9976,9977,9978,9979,9954,9955,9956,9957,9958,9959,9960,9961,9962,9963,9964,9965,9966,9967,9968,9969)",
      "attached_condition": "cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,1)"
    }
  }
}

Result

product_id price
9954 1318.00000000
9955 1318.00000000
9956 1318.00000000
9957 1318.00000000
9958 1318.00000000
9959 1318.00000000
9960 1318.00000000
9961 1318.00000000
9962 1318.00000000
9963 1318.00000000
9964 1318.00000000
9965 1318.00000000
9966 1318.00000000
9967 1318.00000000
9968 1318.00000000
9969 1318.00000000
9976 540.68000000
9977 540.68000000
9978 540.68000000
9979 540.68000000