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 (
    29233, 10387, 10388, 10396, 10397, 10441, 
    10443, 10445, 10507, 10508, 10509, 
    10510, 10511, 10512, 10514, 10341, 
    10366, 10367, 10371, 10372, 10373, 
    10374, 10022, 10031, 10033, 8682, 4584
  ) 
  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": "64.81"
    },
    "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": 27,
        "rows_produced_per_join": 5,
        "filtered": "19.99",
        "index_condition": "(`portal`.`q_product_prices`.`product_id` in (29233,10387,10388,10396,10397,10441,10443,10445,10507,10508,10509,10510,10511,10512,10514,10341,10366,10367,10371,10372,10373,10374,10022,10031,10033,8682,4584))",
        "cost_info": {
          "read_cost": "63.73",
          "eval_cost": "1.08",
          "prefix_cost": "64.81",
          "data_read_per_join": "129"
        },
        "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
4584 359.000000
8682 595.000000
10022 385.000000
10031 595.000000
10033 242.000000
10341 137.000000
10366 131.000000
10367 79.000000
10371 722.000000
10372 540.000000
10373 548.000000
10374 541.000000
10387 419.000000
10388 449.000000
10396 649.000000
10397 399.000000
10441 149.000000
10443 649.000000
10445 499.000000
10507 249.000000
10508 319.000000
10509 489.000000
10510 319.000000
10511 319.000000
10512 215.000000
10514 230.000000
29233 269.000000