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 (
    5940, 5941, 5942, 5943, 5944, 5945, 5946, 
    5947, 5948, 6021, 6022, 6023, 6024, 
    6025, 6026, 6027, 6028, 6029, 6030, 
    6031, 6032, 6033, 6034, 6035, 6036, 
    6037, 6038, 6111, 6112, 6113, 6114, 
    6115, 6116, 6117, 6118, 6119, 6201, 
    6202, 6203, 6204, 6205, 6206, 6207, 
    6208, 3033, 3034, 3035, 3036, 3857, 
    3858, 3859, 3860, 2715, 2716, 2717, 
    2718, 2719, 6303, 6304, 6305, 6306, 
    1500, 1501, 1502, 1503, 3726, 5206, 
    5207, 5208, 5209, 6736, 1490, 1491, 
    1492, 1493, 3724, 5198, 5199, 5200, 
    5201, 6735, 1495, 1496, 1497, 1498, 
    3164, 3725, 5202, 5203, 5204, 5205, 
    1485, 1486, 1487, 1488, 3163
  ) 
  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.00035

JSON explain

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