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 (
    5165, 1446, 5155, 1458, 5167, 1448, 5157, 
    1459, 5168, 5158, 1820, 1821, 1822, 
    1823, 1824, 1825, 1826, 1827, 1828, 
    1829, 1830, 1831, 1832, 1833, 1834, 
    1835, 1836, 1837, 1838, 1839, 1840, 
    1841, 1842, 1843, 1844, 1845, 1846, 
    1847, 1848, 1849, 1850, 1851, 1852, 
    1853, 1854, 1855, 1856, 1857
  ) 
  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.00029

JSON explain

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