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 (
    227, 241, 240, 214, 217, 218, 207, 229, 
    213, 215, 226, 228, 247, 244, 225, 224
  ) 
  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.00409

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": 20,
          "filtered": 22.95684052,
          "index_condition": "cscart_product_prices.product_id in (227,241,240,214,217,218,207,229,213,215,226,228,247,244,225,224)",
          "attached_condition": "cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,1)"
        }
      }
    ]
  }
}

Result

product_id price
207 1680.00000000
213 11800.00000000
214 38880.00000000
215 43800.00000000
217 24439.60000000
218 18399.60000000
224 19199.60000000
225 7999.60000000
226 10799.60000000
227 27960.00000000
228 13999.60000000
229 11999.60000000
240 19960.00000000
241 19960.00000000
244 29199.60000000
247 13179.60000000