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 (
    415556, 415562, 416865, 416880, 416893, 
    416901, 417445, 417469, 418184, 418195, 
    418218, 418226, 418235, 418237, 418762, 
    418768, 418770, 418787, 419497, 419523, 
    419533, 419557, 420067, 420113
  ) 
  AND product_prices.lower_limit = 1 
  AND product_prices.usergroup_id IN (0, 1) 
GROUP BY 
  product_prices.product_id

Query time 0.00119

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "18.47"
    },
    "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 (415556,415562,416865,416880,416893,416901,417445,417469,418184,418195,418218,418226,418235,418237,418762,418768,418770,418787,419497,419523,419533,419557,420067,420113))",
        "cost_info": {
          "read_cost": "18.23",
          "eval_cost": "0.24",
          "prefix_cost": "18.47",
          "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
415556 18.00000000
415562 18.00000000
416865 18.00000000
416880 18.00000000
416893 18.00000000
416901 2.45000000
417445 15.00000000
417469 15.00000000
418184 18.00000000
418195 18.00000000
418218 18.00000000
418226 18.00000000
418235 18.00000000
418237 18.00000000
418762 18.00000000
418768 2.45000000
418770 18.00000000
418787 18.00000000
419497 20.00000000
419523 18.00000000
419533 18.00000000
419557 18.00000000
420067 15.00000000
420113 18.00000000