The elo filter is a numeric filter that consists of the word elo followed by an optional color name (white or black)
    elo black 
    elo white

If a color name (white or black) is specified, the value ove the elo filter is the ELO of the specified player. Otherwise, the value of the elo filter is the maximum ELO of the two players.

If the relevant ELO fields are missing or unknown, the filter does not match the position. As illustrated in the sample file gameinfo.cql, elo works with flipcolor and can be used to find wins against a player with the specified elo:

  {player white "Ivanchuk"
   elo black>= 2000
  result 1-0}
will find games that Ivanchuk wins (because flipcolor transforms both the elo and the result, as they are both enclosed in braces.

For example, to sort Carlsen wins by opponent's elo, use:

     cql(input i.pgn)
      flipcolor {
      player white "Carlsen"
      result 1-0
      sort "Opponent ELO" elo black