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 (
    2915, 2916, 2917, 2918, 2919, 2920, 2921, 
    2881, 2882, 2883, 2884, 2885, 2886, 
    2887, 2888, 2889
  ) 
  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.00059

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "38.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": 16,
        "rows_produced_per_join": 3,
        "filtered": "19.99",
        "index_condition": "(`portal`.`q_product_prices`.`product_id` in (2915,2916,2917,2918,2919,2920,2921,2881,2882,2883,2884,2885,2886,2887,2888,2889))",
        "cost_info": {
          "read_cost": "37.77",
          "eval_cost": "0.64",
          "prefix_cost": "38.41",
          "data_read_per_join": "76"
        },
        "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
2881 599.000000
2882 955.000000
2883 135.000000
2884 315.000000
2885 425.000000
2886 239.000000
2887 235.000000
2888 55.000000
2889 59.000000
2915 485.000000
2916 489.000000
2917 509.000000
2918 479.000000
2919 479.000000
2920 539.000000
2921 569.000000