SELECT 
  product_prices.product_id, 
  MIN(
    IF(
      product_prices.percentage_discount = 0, 
      product_prices.price, 
      product_prices.price - (
        product_prices.price * product_prices.percentage_discount
      )/ 100
    )
  ) AS price 
FROM 
  product_prices 
WHERE 
  product_prices.product_id IN (
    399709, 399715, 399753, 400280, 401024, 
    401025, 401035, 401067, 401081, 401616, 
    401622, 401634, 402338, 402353, 402902, 
    402933, 402938, 403680, 403692, 403709, 
    404244, 404249, 404267, 404982
  ) 
  AND product_prices.lower_limit = 1 
  AND product_prices.usergroup_id IN (0, 1) 
GROUP BY 
  product_prices.product_id

Query time 0.00126

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "19.34"
    },
    "grouping_operation": {
      "using_filesort": false,
      "table": {
        "table_name": "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": 24,
        "rows_produced_per_join": 2,
        "filtered": "10.00",
        "index_condition": "(`goimagine`.`product_prices`.`product_id` in (399709,399715,399753,400280,401024,401025,401035,401067,401081,401616,401622,401634,402338,402353,402902,402933,402938,403680,403692,403709,404244,404249,404267,404982))",
        "cost_info": {
          "read_cost": "19.10",
          "eval_cost": "0.24",
          "prefix_cost": "19.34",
          "data_read_per_join": "57"
        },
        "used_columns": [
          "id",
          "product_id",
          "price",
          "percentage_discount",
          "lower_limit",
          "usergroup_id"
        ],
        "attached_condition": "((`goimagine`.`product_prices`.`lower_limit` = 1) and (`goimagine`.`product_prices`.`usergroup_id` in (0,1)))"
      }
    }
  }
}

Result

product_id price
399709 2.45000000
399715 18.00000000
399753 18.00000000
400280 18.00000000
401024 18.00000000
401025 18.00000000
401035 18.00000000
401067 18.00000000
401081 6.35000000
401616 2.45000000
401622 2.45000000
401634 3.55000000
402338 18.00000000
402353 2.45000000
402902 2.45000000
402933 18.00000000
402938 18.00000000
403680 18.00000000
403692 20.00000000
403709 15.00000000
404244 18.00000000
404249 2.45000000
404267 18.00000000
404982 2.45000000