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 (
    34239, 34249, 34250, 34262, 34349, 34469, 
    34487, 34538, 2464, 2465, 2466, 2467, 
    2469, 1175, 1176, 1177, 1178, 1179, 
    1180, 1181, 1182, 1183, 1184, 1191, 
    1011, 1010, 1009, 999, 998, 997, 975, 
    958
  ) 
  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.00108

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "85.21"
    },
    "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": 38,
        "rows_produced_per_join": 7,
        "filtered": "19.99",
        "index_condition": "(`portal`.`q_product_prices`.`product_id` in (34239,34249,34250,34262,34349,34469,34487,34538,2464,2465,2466,2467,2469,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1191,1011,1010,1009,999,998,997,975,958))",
        "cost_info": {
          "read_cost": "83.69",
          "eval_cost": "1.52",
          "prefix_cost": "85.21",
          "data_read_per_join": "182"
        },
        "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
958 59.000000
975 82.000000
997 102.000000
998 130.000000
999 150.000000
1009 76.000000
1010 76.000000
1011 76.000000
1175 59.000000
1176 39.000000
1177 41.000000
1178 59.000000
1179 55.000000
1180 52.000000
1181 52.000000
1182 55.000000
1183 65.000000
1184 65.000000
1191 159.000000
2464 63.000000
2465 63.000000
2466 52.000000
2467 63.000000
2469 49.000000
34239 36.000000
34249 29.000000
34250 29.000000
34262 46.000000
34349 26.000000
34469 182.000000
34487 34.000000
34538 126.000000