Spécification des enregistrements récapitulatifs à transférer
Dans certains cas, vous souhaiterez peut-être transférer uniquement les enregistrements récapitulatifs qui satisfont à certaines conditions. L'utilisation de HAVING permet de sélectionner les enregistrements récapitulatifs à transférer. WHERE est appliqué à certains enregistrements d'un groupe, tandis que HAVING est appliqué uniquement aux enregistrements récapitulatifs.
L'exemple suivant transfère les prix les plus élevés et les plus bas pour chaque pièce. Toutefois, les enregistrements récapitulatifs à transférer sont uniquement ceux pour lesquels le prix le plus élevé dépasse 10,00.
| Bibliothèque/Fichier (Membre) | SUPPLIERS |
| GROUP BY | PARTNO |
| SELECT | PARTNO, MAX(PRICE), MIN(PRICE) |
| HAVING | MAX(PRICE) > 10.00 |
Le tableau suivant montre le résultat de la suppression des enregistrements récapitulatifs inutiles à l'aide de HAVING
Field: PARTNO MAX(PRICE) MIN(PRICE) ------ ---------- ---------- Record 1: 209 19.50 18.00 2: 285 21.00 21.00 3: 207 29.00 29.00Un seul enregistrement récapitulatif pour un dossier entier peut être transféré. Pour ce faire, spécifiez uniquement la fonction récapitulative dans SELECT et rien dans GROUP BY. En conséquence, un fichier entier peut être reconnu comme un seul groupe, tandis qu'un seul enregistrement récapitulatif peut être transféré pour le groupe.
Vous pouvez utiliser simultanément la notion de synthèse de groupes et celle de jointure d'enregistrements de plusieurs fichiers. Pour obtenir les résultats souhaités, procédez comme suit :
- Spécifiez un fichier dans FROM et spécifiez les conditions de jointure pour joindre les enregistrements dans JOIN BY.
- Spécifiez les conditions dans WHERE pour supprimer les enregistrements inutiles.
- Spécifiez les champs utilisés pour regrouper les enregistrements restants dans GROUP BY.
- Spécifiez la fonction dans SELECT, puis créez des enregistrements récapitulatifs.
- Précisez les conditions dans HAVING pour supprimer les enregistrements inutiles.
- Spécifiez les éléments pour regrouper les enregistrements récapitulatifs finaux dans ORDER BY.