Los operadores relacionales comparan datos numéricos, de serie de caracteres o lógicos. El resultado de la comparación, ya sea Verdadero ( 1 ) o falso ( 0 ), puede utilizarse para tomar una decisión referente al flujo del programa (consulte la sentencia IF ). La Tabla 1 lista los operadores relacionales.
| Operador | Relación | Ejemplo |
|---|---|---|
| EQ o = | Igualdad | X = Y |
| NE o # | Desigualdad | X # Y |
| >< o <> | Desigualdad | X <> Y |
| LT o < | Menor que | X < Y |
| GT o > | Mayor que | X > Y |
| LE o <= o =< o #> | Menor que o igual a | X <= Y |
| GE o >= o => o #< | Mayor que o igual a | X >= Y |
Cuando en una expresión se utilizan tanto operadores aritméticos como operadores relacionales, las operaciones aritméticas se realizan primero. Por ejemplo, la expresión:
X + Y < (T - 1) / Z
es verdadera si el valor de X más Y es menor que el valor de T menos 1 dividido por Z.
Las comparaciones de series se efectúan comparando los valores ASCII de los caracteres únicos de cada serie. La serie con el equivalente de código ASCII numérico más alto se considera mayor. Si todos los códigos ASCII son iguales, las series se consideran iguales.
Si las dos series tienen longitudes distintas, pero por lo demás la serie más corta es idéntica al principio de la serie más larga, la serie más larga se considera mayor.
Un espacio se evalúa como menor que cero. Los espacios iniciales y finales son significativos. Si dos series se pueden convertir en valores numéricos, la comparación siempre se realiza numéricamente.
A continuación figuran algunos ejemplos de comparaciones verdaderas:
"AA" < "AB"
"FILENAME" = "FILENAME"
"X&" > "X#"
"CL " > "CL"
"kg" > "KG"
"SMYTH" < "SMYTHE"
B$ < "9/14/93" (B$ = "8/14/93")
El resultado de cualquier comparación en que participa el valor nulo no se puede determinar (es decir, el resultado de utilizar un operador relacional para comparar cualquier valor con el valor nulo es desconocido). No es posible probar el valor nulo utilizando el operador = (igual), ya que el valor nulo no es igual a ningún valor, incluido él mismo. La única manera de probar el valor nulo es mediante la función ISNULL o ISNULLS.