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 (
    1659, 1637, 1667, 1645, 1676, 2159, 1653, 
    1684, 1631, 1661, 2216, 2218, 2229, 
    2228, 1639, 1669, 1628, 1658, 1633, 
    1663, 2186, 1651, 1682, 1640, 1670, 
    1650, 1681, 1630, 1660, 1649, 1680, 
    1648, 1679, 1647, 1678, 1632, 1662, 
    2184
  ) 
  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.00040

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "27.51"
    },
    "grouping_operation": {
      "using_filesort": false,
      "table": {
        "table_name": "cscart_product_prices",
        "access_type": "range",
        "possible_keys": [
          "usergroup",
          "product_id",
          "lower_limit",
          "usergroup_id"
        ],
        "key": "product_id",
        "used_key_parts": [
          "product_id"
        ],
        "key_length": "3",
        "rows_examined_per_scan": 40,
        "rows_produced_per_join": 7,
        "filtered": "19.97",
        "index_condition": "(`cscartdevel`.`cscart_product_prices`.`product_id` in (1659,1637,1667,1645,1676,2159,1653,1684,1631,1661,2216,2218,2229,2228,1639,1669,1628,1658,1633,1663,2186,1651,1682,1640,1670,1650,1681,1630,1660,1649,1680,1648,1679,1647,1678,1632,1662,2184))",
        "cost_info": {
          "read_cost": "26.71",
          "eval_cost": "0.80",
          "prefix_cost": "27.51",
          "data_read_per_join": "191"
        },
        "used_columns": [
          "product_id",
          "price",
          "percentage_discount",
          "lower_limit",
          "usergroup_id"
        ],
        "attached_condition": "((`cscartdevel`.`cscart_product_prices`.`lower_limit` = 1) and (`cscartdevel`.`cscart_product_prices`.`usergroup_id` in (0,1)))"
      }
    }
  }
}

Result

product_id price
1628 15.00000000
1630 15.00000000
1631 15.00000000
1632 15.00000000
1633 15.00000000
1637 15.00000000
1639 15.00000000
1640 15.00000000
1645 15.00000000
1647 15.00000000
1648 15.00000000
1649 15.00000000
1650 15.00000000
1651 15.00000000
1653 15.00000000
1658 45.00000000
1659 45.00000000
1660 45.00000000
1661 45.00000000
1662 45.00000000
1663 45.00000000
1667 45.00000000
1669 45.00000000
1670 45.00000000
1676 45.00000000
1678 45.00000000
1679 45.00000000
1680 45.00000000
1681 45.00000000
1682 45.00000000
1684 45.00000000
2159 17.18000000
2184 14.58000000
2186 24.19000000
2216 14.78000000
2218 14.78000000
2228 14.78000000
2229 14.78000000