SELECT 
  cscart_product_prices.product_id, 
  MIN(
    IF(
      cscart_product_prices.percentage_discount = 0, 
      cscart_product_prices.price, 
      cscart_product_prices.price - (
        cscart_product_prices.price * cscart_product_prices.percentage_discount
      )/ 100
    )
  ) AS price 
FROM 
  cscart_product_prices 
WHERE 
  cscart_product_prices.product_id IN (
    2039, 1757, 1758, 2649, 2637, 2871, 2668, 
    2277, 2366, 2481, 406, 2692, 401, 2135, 
    2890, 2851, 2548, 466, 2522, 1412
  ) 
  AND cscart_product_prices.lower_limit = 1 
  AND cscart_product_prices.usergroup_id IN (0, 1) 
GROUP BY 
  cscart_product_prices.product_id

Query time 0.00096

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "14.01"
    },
    "grouping_operation": {
      "using_filesort": false,
      "table": {
        "table_name": "cscart_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": 20,
        "rows_produced_per_join": 3,
        "filtered": "19.88",
        "index_condition": "(`zdrowy_db`.`cscart_product_prices`.`product_id` in (2039,1757,1758,2649,2637,2871,2668,2277,2366,2481,406,2692,401,2135,2890,2851,2548,466,2522,1412))",
        "cost_info": {
          "read_cost": "13.61",
          "eval_cost": "0.40",
          "prefix_cost": "14.01",
          "data_read_per_join": "95"
        },
        "used_columns": [
          "product_id",
          "price",
          "percentage_discount",
          "lower_limit",
          "usergroup_id"
        ],
        "attached_condition": "((`zdrowy_db`.`cscart_product_prices`.`lower_limit` = 1) and (`zdrowy_db`.`cscart_product_prices`.`usergroup_id` in (0,1)))"
      }
    }
  }
}

Result

product_id price
401 2365.00000000
406 1950.00000000
466 71.00000000
1412 3828.00000000
1757 255.00000000
1758 95.00000000
2039 202.00000000
2135 2355.00000000
2277 1085.00000000
2366 1950.00000000
2481 2100.00000000
2522 80.00000000
2548 110.00000000
2637 173.00000000
2649 341.00000000
2668 950.00000000
2692 1950.00000000
2851 100.00000000
2871 1020.00000000
2890 1950.00000000