SELECT 
  *, 
  amount AS pure_amount 
FROM 
  cscart_reward_points 
WHERE 
  object_id = 230 
  AND object_type = 'P' 
  AND company_id = 0 
  AND amount > 0 
  AND usergroup_id IN(0, 1) 
ORDER BY 
  amount_type ASC, 
  amount ASC 
LIMIT 
  1

Query time 0.00036

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost": 0.00345856,
    "nested_loop": [
      {
        "read_sorted_file": {
          "filesort": {
            "sort_key": "cscart_reward_points.amount_type, cscart_reward_points.amount",
            "table": {
              "table_name": "cscart_reward_points",
              "access_type": "range",
              "possible_keys": ["unique_key"],
              "key": "unique_key",
              "key_length": "13",
              "used_key_parts": [
                "object_id",
                "usergroup_id",
                "object_type",
                "company_id"
              ],
              "loops": 1,
              "rows": 1,
              "cost": 0.00345856,
              "filtered": 100,
              "index_condition": "cscart_reward_points.object_id = 230 and cscart_reward_points.company_id = 0 and cscart_reward_points.object_type = 'P' and cscart_reward_points.usergroup_id in (0,1)",
              "attached_condition": "cscart_reward_points.amount > 0"
            }
          }
        }
      }
    ]
  }
}