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 (
    400316, 401024, 401027, 401040, 401070, 
    401577, 401589, 401603, 401614, 401618, 
    401630, 402338, 402355, 402360, 402362, 
    402897, 402908, 402938, 403717, 404218, 
    404252, 404994, 405004, 405006
  ) 
  AND product_prices.lower_limit = 1 
  AND product_prices.usergroup_id IN (0, 1) 
GROUP BY 
  product_prices.product_id

Query time 0.00133

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "18.50"
    },
    "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 (400316,401024,401027,401040,401070,401577,401589,401603,401614,401618,401630,402338,402355,402360,402362,402897,402908,402938,403717,404218,404252,404994,405004,405006))",
        "cost_info": {
          "read_cost": "18.26",
          "eval_cost": "0.24",
          "prefix_cost": "18.50",
          "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
400316 15.00000000
401024 18.00000000
401027 15.00000000
401040 18.00000000
401070 18.00000000
401577 20.00000000
401589 2.45000000
401603 18.00000000
401614 15.00000000
401618 18.00000000
401630 18.00000000
402338 18.00000000
402355 18.00000000
402360 18.00000000
402362 18.00000000
402897 20.00000000
402908 18.00000000
402938 18.00000000
403717 18.00000000
404218 18.00000000
404252 20.00000000
404994 2.45000000
405004 18.00000000
405006 2.45000000