SELECT 
  q_product_prices.product_id, 
  MIN(
    IF(
      q_product_prices.percentage_discount = 0, 
      q_product_prices.price, 
      q_product_prices.price - (
        q_product_prices.price * q_product_prices.percentage_discount
      )/ 100
    )
  ) AS price 
FROM 
  q_product_prices 
WHERE 
  q_product_prices.product_id IN (
    2643, 2644, 2645, 2646, 2647, 2648, 2543, 
    2544, 2545, 2546, 2547, 2548, 2549, 
    2550, 2551, 2552, 2553, 2554, 2555, 
    2556, 2557, 2558, 2559, 2560, 2561, 
    2562, 2563, 2564, 2565, 2566
  ) 
  AND q_product_prices.lower_limit = 1 
  AND q_product_prices.usergroup_id IN (0, 1) 
GROUP BY 
  q_product_prices.product_id

Query time 0.00085

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "73.41"
    },
    "grouping_operation": {
      "using_filesort": false,
      "table": {
        "table_name": "q_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": 31,
        "rows_produced_per_join": 6,
        "filtered": "19.99",
        "index_condition": "(`portal`.`q_product_prices`.`product_id` in (2643,2644,2645,2646,2647,2648,2543,2544,2545,2546,2547,2548,2549,2550,2551,2552,2553,2554,2555,2556,2557,2558,2559,2560,2561,2562,2563,2564,2565,2566))",
        "cost_info": {
          "read_cost": "72.17",
          "eval_cost": "1.24",
          "prefix_cost": "73.41",
          "data_read_per_join": "148"
        },
        "used_columns": [
          "product_id",
          "price",
          "percentage_discount",
          "lower_limit",
          "usergroup_id"
        ],
        "attached_condition": "((`portal`.`q_product_prices`.`lower_limit` = 1) and (`portal`.`q_product_prices`.`usergroup_id` in (0,1)))"
      }
    }
  }
}

Result

product_id price
2543 149.000000
2544 325.000000
2545 225.000000
2546 229.000000
2547 289.000000
2548 239.000000
2549 175.000000
2550 305.000000
2551 519.000000
2552 199.000000
2553 309.000000
2554 289.000000
2555 139.000000
2556 215.000000
2557 429.000000
2558 329.000000
2559 385.000000
2560 299.000000
2561 259.000000
2562 229.000000
2563 205.000000
2564 239.000000
2565 239.000000
2566 69.000000
2643 325.000000
2644 139.000000
2645 139.000000
2646 139.000000
2647 285.000000
2648 235.000000