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 (
    356162, 357463, 357496, 357507, 358017, 
    358776, 358802, 360118, 360154, 360656, 
    361435, 364064, 365943, 365961, 365971, 
    366731, 366746, 369904, 369931, 370671, 
    370674, 370697, 375936, 377816
  ) 
  AND product_prices.lower_limit = 1 
  AND product_prices.usergroup_id IN (0, 1) 
GROUP BY 
  product_prices.product_id

Query time 0.00191

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "19.94"
    },
    "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 (356162,357463,357496,357507,358017,358776,358802,360118,360154,360656,361435,364064,365943,365961,365971,366731,366746,369904,369931,370671,370674,370697,375936,377816))",
        "cost_info": {
          "read_cost": "19.70",
          "eval_cost": "0.24",
          "prefix_cost": "19.94",
          "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
356162 18.00000000
357463 18.00000000
357496 2.45000000
357507 20.00000000
358017 18.00000000
358776 20.00000000
358802 18.00000000
360118 2.45000000
360154 18.00000000
360656 20.00000000
361435 18.00000000
364064 18.00000000
365943 18.00000000
365961 18.00000000
365971 20.00000000
366731 20.00000000
366746 18.00000000
369904 18.00000000
369931 20.00000000
370671 2.45000000
370674 18.00000000
370697 18.00000000
375936 20.00000000
377816 20.00000000