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 (
    336361, 336930, 336933, 337664, 337674, 
    337692, 337703, 338216, 338243, 338252, 
    338272, 339536, 339577, 339583, 340353, 
    340879, 340913, 341623, 342234, 342947, 
    342953, 343537, 344261, 344267
  ) 
  AND product_prices.lower_limit = 1 
  AND product_prices.usergroup_id IN (0, 1) 
GROUP BY 
  product_prices.product_id

Query time 0.00115

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "18.53"
    },
    "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 (336361,336930,336933,337664,337674,337692,337703,338216,338243,338252,338272,339536,339577,339583,340353,340879,340913,341623,342234,342947,342953,343537,344261,344267))",
        "cost_info": {
          "read_cost": "18.29",
          "eval_cost": "0.24",
          "prefix_cost": "18.53",
          "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
336361 18.00000000
336930 2.45000000
336933 15.00000000
337664 18.00000000
337674 18.00000000
337692 18.00000000
337703 3.55000000
338216 20.00000000
338243 18.00000000
338252 18.00000000
338272 18.00000000
339536 20.00000000
339577 18.00000000
339583 3.55000000
340353 3.55000000
340879 18.00000000
340913 3.55000000
341623 18.00000000
342234 18.00000000
342947 18.00000000
342953 2.45000000
343537 18.00000000
344261 2.45000000
344267 18.00000000