Cómo utilizar operadores en pruebas de selección de registros

Referencia:

Puede incluir una variedad de operadores en sus pruebas de selección WHERE e IF. Muchos de los operadores son comunes para WHERE e IF. Sin embargo, muchos de ellos sólo se admiten en pruebas WHERE.


Principio de página

x
Referencia: Operadores admitidos para pruebas WHERE e IF

Puede definir los criterios de selección WHERE e IF mediante los siguientes operadores.

Operador WHERE

Operador IF

Significado

EQ
IS
EQ
IS

Prueba y selecciona valores iguales a la expresión del texto.

NE
IS-NOT
NE
IS-NOT

Prueba y selecciona valores que no sean iguales a la expresión del texto.

GE
GE
FROM
IS-FROM

Prueba y selecciona valores mayores o iguales al valor de prueba (basado en los caracteres 0 a 9 para valores numéricos, A a Z y a z para valores alfanuméricos.

El valor de prueba puede tratarse de un valor de campo o de resultado de una expresión.

GT 
EXCEEDS 
IS-MORE-THAN
GT 
EXCEEDS 
IS-MORE-THAN

Prueba y selecciona valores mayores que el valor de prueba.

LT 
IS-LESS-THAN 
LT 
IS-LESS-THAN 

Prueba y selecciona valores menores que el valor de prueba.

LE
LE 
TO

Prueba y selecciona valores menores o iguales al valor de prueba.

GE lower AND 
... 
LE upper 
 

Prueba y selecciona valores que se encuentran dentro de un rango de valores

LT lower OR 
... GT upper  
 

Prueba y selecciona valores que se encuentran fuera de un rango de valores.

FROM lower 
TO upper
 

Prueba y selecciona valores que se encuentran dentro de un rango de valores

IS-FROM lower 
TO upper
IS-FROM lower 
TO upper 

Prueba y selecciona valores que se encuentran dentro de un rango de valores En WHERE, ésta es la sintaxis alternativa para FROM lower to UPPER. Ambos operadores producen idénticos resultados.

NOT-FROM lower 
TO upper
NOT-FROM lower 
TO upper 

Prueba y selecciona valores que se encuentran fuera de un rango de valores.

IS MISSING 
IS-NOT MISSING 
NE MISSING
IS MISSING 
IS-NOT MISSING 
NE MISSING

Verifica si un campo contiene valores no disponibles. Si algunos casos del campo no contienen datos, entonces tienen datos no disponibles. Para obtener información sobre datos no disponibles, consulte Cómo manejar registros con valores de campo no disponibles.

CONTAINS 
LIKE
CONTAINS 
LIKE

Prueba y selecciona valores que incluyan un valor de prueba que corresponda a una cadena de caracteres. La cadena puede presentarse en cualquier posición en el valor que es objeto de la prueba. Cuando se utiliza con WHERE, CONTAINS puede probar campos alfanuméricos. Cuando se utiliza con IF, puede probar campos alfanuméricos y de texto.

OMITS 
NOT LIKE 
OMITS 
UNLIKE

Prueba y selecciona valores que no incluyan un valor de prueba que corresponda a una cadena de caracteres. La cadena no puede presentarse en ninguna posición en el valor que es objeto de la prueba. Cuando se utiliza con WHERE, OMITS puede probar campos alfanuméricos. Cuando se utiliza con IF, puede probar campos alfanuméricos y de texto.

INCLUDES 
INCLUDES

Verifica si una cadena de valores de un campo dado en un segmento secundario incluye todos los elementos de una lista de literales.

EXCLUDES 
EXCLUDES

Verifica si una cadena de valores de un campo dado en un segmento secundario excluye todos los elementos de una lista de literales.

IN (z,x,y)
 

Selecciona registros basados en valores encontrados en una lista desorganizada.

NOT ... IN 
(z,x,y) 
 

Selecciona registros basados en valores no encontrados en una lista desorganizada.

IN FILE 
 

Selecciona registros basados en valores almacenados en un archivo secuencial.

NOT ... IN FILE 
 

Selecciona registros basados en valores no hallados en un archivo secuencial.



Ejemplo: Cómo utilizar operadores para comparar un campo con uno o más valores

Los siguientes ejemplos muestran criterios de selección de campo que utilizan uno o más valores. Puede utilizar los operadores: EQ, IS, IS-NOT, EXCEEDS, IS-LESS-THAN e IN.

Ejemplo 1: El campo LAST_NAME debe igualar al valor JONES:

WHERE LAST_NAME EQ 'JONES'

Ejemplo 2: El campo LAST_NAME empieza por 'CR' o 'MC:'

WHERE EDIT (LAST_NAME, '99') EQ 'CR' OR 'MC'

Ejemplo 3: El campo AREA no debe igualar el valor EAST o el valor WEST:

WHERE AREA IS-NOT 'EAST' OR 'WEST'

Ejemplo 4: El valor del campo AREA debe igualar el valor del campo REGION:

WHERE AREA EQ REGION

Fíjese que no puede comparar un campo con otro en una prueba IF.

Ejemplo 5: La relación entre costo de venta al detalle y costo del distribuidor debe ser superior a 1.25:

WHERE RETAIL_COST/DEALER_COST GT 1.25

Ejemplo 6: El campo UNITS debe ser igual o menor que el valor 50 y AREA no debe se igual a NORTH EAST ni a WEST. Fíjese en el uso de las comillas simples, alrededor de NORTH EAST. Todas las cadenas alfanuméricas deben ponerse en comillas simples.

WHERE UNITS LE 50 WHERE AREA IS-NOT 'NORTH EAST' OR 'WEST'

Ejemplo 7: El valor de AMOUNT debe ser mayor de 40:

WHERE AMOUNT EXCEEDS 40

Ejemplo 8: El valor de AMOUNT debe ser mayor de 50:

WHERE AMOUNT IS-LESS-THAN 50

Ejemplo 9: El valor de SALES debe ser igual a uno de los valores numéricos de la lista desorganizada. Utilice comas o espacios en blanco para separar los valores de la lista.

WHERE SALES IN (43000,12000,13000)

Ejemplo 10: El valor de CAR debe ser igual a uno de los valores alfanuméricos de la lista desorganizada. Los valores de la lista alfanumérica deben ponerse entre comillas simples.

WHERE CAR IN ('JENSEN','JAGUAR')


Ejemplo: Cómo utilizar variables en pruebas se selección de registros

En este ejemplo, el campo REGION se utiliza en la prueba WHERE como una variable, de manera que cuando se ejecute el informe, se le pida al usuario que seleccione uno de los valores listados (CE, CORP, NE, SE o WE) del campo REGION. El texto que aparece después de los valores es lo que aparece antes de la lista desplegable en la salida.

TABLE FILE EMPDATA
SUM SALARY
BY DIV
BY DEPT
HEADING
"Current Salary Report"
"for the &REGION Division"
" "
WHERE ( DIV EQ
'&REGION.(CE,CORP,NE,SE,WE).Please select a Region.');
END

La salida es:

Seleccione una región de la lista desplegable y pulse Enviar. La salida correspondiente a la región NE es:


WebFOCUS