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 (
    1603, 1602, 1601, 1600, 1599, 1598, 1597, 
    1565, 1586, 1577, 1595, 1594, 1593, 
    1591, 1590, 1589, 1588, 1587, 1579, 
    1585, 1584, 1514, 1583, 1582
  ) 
  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.00116

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": 24,
      "filtered": 4.897957802,
      "index_condition": "cscart_product_prices.product_id in (1603,1602,1601,1600,1599,1598,1597,1565,1586,1577,1595,1594,1593,1591,1590,1589,1588,1587,1579,1585,1584,1514,1583,1582)",
      "attached_condition": "cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,1)"
    }
  }
}

Result

product_id price
1514 34000.00000000
1565 22000.00000000
1577 30000.00000000
1579 54000.00000000
1582 0.00000000
1583 12000.00000000
1584 56000.00000000
1585 56000.00000000
1586 11000.00000000
1587 0.00000000
1588 70000.00000000
1589 73000.00000000
1590 68000.00000000
1591 85000.00000000
1593 82000.00000000
1594 89000.00000000
1595 25000.00000000
1597 23000.00000000
1598 23000.00000000
1599 22000.00000000
1600 24000.00000000
1601 24500.00000000
1602 24500.00000000
1603 52000.00000000