SELECT 
  cscart_ult_product_prices.product_id, 
  MIN(
    IF(
      cscart_ult_product_prices.percentage_discount = 0, 
      cscart_ult_product_prices.price, 
      cscart_ult_product_prices.price - (
        cscart_ult_product_prices.price * cscart_ult_product_prices.percentage_discount
      )/ 100
    )
  ) AS price 
FROM 
  cscart_ult_product_prices 
WHERE 
  cscart_ult_product_prices.product_id IN (
    3863, 3148, 6718, 6722, 3144, 3147, 3096, 
    339, 3104, 3107, 6682, 6678, 104, 105, 
    106, 107, 108, 109, 110, 4013, 4014, 
    4015, 4016, 4017, 4018, 4019, 3105, 
    6677, 6686, 64, 118, 224, 225, 285, 3975, 
    4027, 4108, 4109, 4170, 4223, 203, 204, 
    205, 206, 207, 208, 209, 4087, 4088, 
    4089, 4090, 4091, 4092, 4093, 3122, 
    6675, 6696, 6703, 3118, 3111, 3124, 
    3112, 324, 3419, 6704, 3418, 6709, 6946, 
    4177, 6945, 338, 331, 6705, 3932, 3134, 
    3116, 3126, 6673, 6679, 6691, 3155, 
    3131, 310, 303, 3939, 317, 3132, 3143, 
    3130, 3129, 3121, 3128, 6681, 6695, 
    3098, 3115
  ) 
  AND cscart_ult_product_prices.lower_limit = 1 
  AND cscart_ult_product_prices.company_id = 1 
  AND cscart_ult_product_prices.usergroup_id IN (0, 0, 1) 
GROUP BY 
  cscart_ult_product_prices.product_id

Query time 0.00032

JSON explain

{
  "query_block": {
    "select_id": 1,
    "message": "no matching row in const table"
  }
}