SELECT 
  prices.product_id, 
  prices.lower_limit, 
  usergroup_id, 
  prices.percentage_discount, 
  IF(
    prices.percentage_discount = 0, 
    prices.price, 
    prices.price - (
      prices.price * prices.percentage_discount
    )/ 100
  ) as price 
FROM 
  cscart_product_prices prices 
WHERE 
  prices.product_id = 291 
  AND lower_limit > 1 
  AND prices.usergroup_id IN (0, 0, 1) 
ORDER BY 
  lower_limit

Query time 0.00022

JSON explain

{
  "query_block": {
    "select_id": 1,
    "nested_loop": [
      {
        "read_sorted_file": {
          "filesort": {
            "sort_key": "prices.lower_limit",
            "table": {
              "table_name": "prices",
              "access_type": "ref",
              "possible_keys": [
                "usergroup",
                "product_id",
                "lower_limit",
                "usergroup_id"
              ],
              "key": "product_id",
              "key_length": "3",
              "used_key_parts": ["product_id"],
              "ref": ["const"],
              "rowid_filter": {
                "range": {
                  "key": "lower_limit",
                  "used_key_parts": ["lower_limit"]
                },
                "rows": 1,
                "selectivity_pct": 25
              },
              "rows": 1,
              "filtered": 25,
              "attached_condition": "prices.product_id <=> 291 and prices.lower_limit > 1 and prices.usergroup_id in (0,0,1)"
            }
          }
        }
      }
    ]
  }
}