Cómo utilizar expresiones compuestas para seleccionar registros

Puede combinar dos o más expresiones WHERE sencillas conectadas mediante operadores AND u OR para crear una expresión compuestas.

De forma predeterminada, cuando se evalúan múltiples frases WHERE, las lógicas AND se procesan antes que las lógicas OR. En expresiones complejas puede utilizar paréntesis para cambiar el orden de evaluación. Todos los operadores AND y OR encerrados en paréntesis se evalúan primero, seguidos por los operadores AND y OR que se encuentran fuera de paréntesis.

Siempre debe utilizar paréntesis en expresiones complejas para garantizar que se evalúe la expresión correctamente. Por ejemplo:

WHERE (SEATS EQ 2) AND (SEATS NOT-FROM 3 TO 4)

Esto es específicamente útil al mezclar pruebas literales OR con pruebas lógicas AND u OR:


Principio de página

Ejemplo: Cómo mezclar pruebas AND y OR de selección de registros

Este ejemplo ilustra el impacto del paréntesis en la evaluación de literales OR y lógicas AND.

En esta solicitud, cada expresión encerrada en paréntesis se evalúa primero en el orden en que aparezca. Note que la primer expresión contiene un literal OR. Después el resultado de cada expresión se evalúa utilizando la lógica AND.

Si se excluyen los paréntesis, se evalúa la lógica AND antes del literal OR.

TABLE FILE EMPLOYEE
PRINT CURR_SAL BY LAST_NAME
WHERE (LAST_NAME EQ 'CROSS' OR 'JONES')
AND (CURR_SAL GT 22000)
END

La salida es:

LAST_NAME               CURR_SAL
---------               --------
CROSS                 $27,062.00

WebFOCUS