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 (
    699, 711, 703, 710, 706, 1760, 1844, 1689, 
    1754, 1755, 1840, 1756, 1753, 1472, 
    1145, 1202, 247, 296, 1765, 820, 1816, 
    1766, 1219, 1220
  ) 
  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.00125

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 (699,711,703,710,706,1760,1844,1689,1754,1755,1840,1756,1753,1472,1145,1202,247,296,1765,820,1816,1766,1219,1220)",
      "attached_condition": "cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,1)"
    }
  }
}

Result

product_id price
247 42000.00000000
296 32000.00000000
699 103000.00000000
703 113000.00000000
706 105000.00000000
710 110000.00000000
711 110000.00000000
820 98000.00000000
1145 29000.00000000
1202 46000.00000000
1219 56000.00000000
1220 56000.00000000
1472 145000.00000000
1689 106000.00000000
1753 110000.00000000
1754 113000.00000000
1755 113000.00000000
1756 113000.00000000
1760 110000.00000000
1765 52000.00000000
1766 115000.00000000
1816 56000.00000000
1840 110000.00000000
1844 110000.00000000