En esta sección: Cómo: |
Puede llamar a una función en criterios WHERE o IF. Al llevar a cabo esta acción, el valor de salida de la función se compara con un valor de prueba.
WHERE function relation expression
donde:
Es una función.
Es un operador que determina la relación entre la función y la expresión; por ejemplo, EQ o LE.
Es una constante, campo o función. El literal debe estar entre comillas simples.
IF function relation value
donde:
Es una función.
Es un operador que determina la relación entre la función y la expresión; por ejemplo, EQ o LE.
Es una constante. En comandos DEFINE y COMPUTE, el valor debe estar entre comillas simples.
La función SUBSTR extrae los dos primeros caracteres de LAST_NAME en forma de subcadena y, si ésta es MC, la solicitud imprime el nombre y el salario del empleado.
TABLE FILE EMPLOYEE PRINT FIRST_NAME LAST_NAME CURR_SAL WHERE SUBSTR(15, LAST_NAME, 1, 2, 2, 'A2') IS 'MC'; END
La salida es:
FIRST_NAME LAST_NAME CURR_SAL ---------- --------- -------- JOHN MCCOY $18,480.00 ROGER MCKNIGHT $16,100.00
Debe especificar el formato del valor de salida en un comando IF de cálculo o compuesto. Existen dos maneras de hacer esto:
COMPUTE AMOUNT/D8.2 =; AMOUNT_FLAG/A5 = IF function(input1, input2, AMOUNT) GE 500 THEN 'LARGE' ELSE 'SMALL';
DEFINE AMOUNT_FLAG/A5 = IF function(input1, input2, 'D8.2') GE 500 THEN 'LARGE' ELSE 'SMALL';
WebFOCUS |