Comment : Référence : |
Vous pouvez sélectionner les enregistrements selon la valeur ajoutée d'un champ. Par exemple, sur les valeurs de champ ajoutées, ou sur la moyenne des valeurs de champ, en utilisant la phrase WHERE TOTAL. WHERE TOTAL est très utile lorsque vous employez les commandes d'affichage agrégées SUM et COUNT, et est requis pour les champs avec un opérateur préfixe, tel que AVE. et PCT.
Dans les tests WHERE, les données sont évaluées avant qu'elles ne soient récupérées. Cependant, dans les tests WHERE TOTAL, les données sont sélectionnées après que toutes les données aient été récupérées et traitées. Pour voir un exemple, consultez Utiliser WHERE TOTAL dans la sélection d'enregistrements.
WHERE TOTAL criteria[;]
où :
L'exemple suivant additionne les salaires actuels par service.
TABLE FILE EMPLOYEE SUM CURR_SAL BY DEPARTMENT END
La sortie est :
DEPARTMENT CURR_SAL ---------- -------- MIS $108,002.00 PRODUCTION $114,282.00
Maintenant, ajoutez une phrase WHERE TOTAL à la requête afin de générer un rapport qui liste uniquement les services où le total des salaires est supérieur à $110 000.
TABLE FILE EMPLOYEE SUM CURR_SAL BY DEPARTMENT WHERE TOTAL CURR_SAL EXCEEDS 110000 END
Les valeurs de chaque service sont calculées, puis chaque valeur finale est comparée à $110 000. La sortie est :
DEPARTMENT CURR_SAL ---------- -------- PRODUCTION $114,282.00
La requête suivante extrait des enregistrements pour le service MIS. Puis, CURR_SAL est additionné pour chaque employé. Si le salaire total d'un employé est supérieur à $20 000, les valeurs de CURR_SAL sont alors traitées pour le rapport. Autrement dit, WHERE TOTAL interprète les données après la sélection d'enregistrements.
TABLE FILE EMPLOYEE SUM CURR_SAL BY LAST_NAME AND BY FIRST_NAME WHERE TOTAL CURR_SAL EXCEEDS 20000 WHERE DEPARTMENT IS 'MIS' END
La sortie est :
LAST_NAME FIRST_NAME CURR_SAL --------- ---------- -------- BLACKWOOD ROSEMARIE $21,780.00 CROSS BARBARA $27,062.00
WebFOCUS |