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 (
    976, 978, 968, 971, 636, 969, 972, 977, 
    1022, 1023, 1106, 1013, 1105, 1101, 
    1104, 979, 989, 632, 613, 617, 621, 622, 
    1015, 1016, 1018, 1019, 611, 612, 980, 
    1007, 1002, 638, 997, 990, 992, 985, 
    1012, 1020
  ) 
  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.00132

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "104.60"
    },
    "grouping_operation": {
      "using_temporary_table": true,
      "using_filesort": true,
      "table": {
        "table_name": "cscart_product_prices",
        "access_type": "ref",
        "possible_keys": [
          "usergroup",
          "product_id",
          "lower_limit",
          "usergroup_id"
        ],
        "key": "lower_limit",
        "used_key_parts": [
          "lower_limit"
        ],
        "key_length": "3",
        "ref": [
          "const"
        ],
        "rows_examined_per_scan": 463,
        "rows_produced_per_join": 10,
        "filtered": "2.19",
        "index_condition": "(`cscart`.`cscart_product_prices`.`lower_limit` <=> 1)",
        "cost_info": {
          "read_cost": "12.00",
          "eval_cost": "2.03",
          "prefix_cost": "104.60",
          "data_read_per_join": "243"
        },
        "used_columns": [
          "product_id",
          "price",
          "percentage_discount",
          "lower_limit",
          "usergroup_id"
        ],
        "attached_condition": "((`cscart`.`cscart_product_prices`.`product_id` in (976,978,968,971,636,969,972,977,1022,1023,1106,1013,1105,1101,1104,979,989,632,613,617,621,622,1015,1016,1018,1019,611,612,980,1007,1002,638,997,990,992,985,1012,1020)) and (`cscart`.`cscart_product_prices`.`usergroup_id` in (0,1)))"
      }
    }
  }
}

Result

product_id price
611 19635.00000000
612 14250.00000000
613 10016.00000000
617 8508.00000000
621 18908.00000000
622 14016.00000000
632 18710.00000000
636 28630.00000000
638 12390.00000000
968 40288.00000000
969 43411.00000000
971 29047.00000000
972 33098.00000000
976 31073.00000000
977 33455.00000000
978 22162.00000000
979 10207.00000000
980 12700.00000000
985 20847.00000000
989 19175.00000000
990 17704.00000000
992 14634.00000000
997 12222.00000000
1002 14159.00000000
1007 15561.00000000
1012 14535.00000000
1013 77873.00000000
1015 23644.00000000
1016 33512.00000000
1018 30744.00000000
1019 35724.00000000
1020 28382.00000000
1022 22700.00000000
1023 26412.00000000
1101 1.00000000
1104 1.00000000
1105 1.00000000
1106 1.00000000