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 (
    51099, 51098, 51095, 51094, 51093, 51092, 
    51078, 51069, 51064, 51058, 51043, 
    51042, 51037, 51036, 51029, 51008
  ) 
  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.00063

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "51.01"
    },
    "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": 25,
        "rows_produced_per_join": 4,
        "filtered": "19.99",
        "index_condition": "(`portal`.`q_product_prices`.`product_id` in (51099,51098,51095,51094,51093,51092,51078,51069,51064,51058,51043,51042,51037,51036,51029,51008))",
        "cost_info": {
          "read_cost": "50.01",
          "eval_cost": "1.00",
          "prefix_cost": "51.01",
          "data_read_per_join": "119"
        },
        "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
51008 49.000000
51029 39.000000
51036 39.000000
51037 29.000000
51042 59.000000
51043 49.000000
51058 69.000000
51064 29.000000
51069 59.000000
51078 49.000000
51092 59.000000
51093 39.000000
51094 25.000000
51095 49.000000
51098 49.000000
51099 49.000000