|
|
|
|
|
- Requête SQL de comptage sur la totalité du fichier de données
- Requête SQL de comptage sur un regroupement
- Requête SQL de comptage sur un regroupement en programmation
Comment faire une requête SQL pour compter ?
Pour effectuer un comptage d'enregistrements dans un fichier de données, il est possible d'effectuer une boucle de parcours et d'incrémenter une variable de type entier. Un moyen plus efficace pour effectuer ce comptage consiste à utiliser une requête SQL. Nous allons voir comment effectuer un comptage en utilisant : Requête SQL de comptage sur la totalité du fichier de données Cette requête de comptage permet de compter tous les enregistrements d'un fichier de données. Les images présentent le comptage de tous les enregistrements du fichier CLIENT. Les différentes étapes pour créer cette requête SQL de comptage sont : - Cliquez sur parmi les boutons d'accès rapide.
- Dans la fenêtre qui s'affiche, cliquez sur "Requêtes".
- L'assistant de création d'une requête se lance.
- Choisissez de créer une requête de sélection (option "Sélection (SELECT)").
Passez à l'étape suivante de l'assistant. - La fenêtre de description de la requête s'affiche.
- Donnez un nom et un libellé à la requête :
- Choisissez une rubrique (identifiant par exemple) dans le fichier de données où le comptage doit être réalisé.
- Ajoutez cette rubrique à la liste des rubriques de la requête.
- Dans la partie droite de l'éditeur, cliquez sur le bouton "Comptage". Dans le menu qui s'affiche, sélectionnez "Compter sur la rubrique sélectionnée" : La fenêtre suivante s'affiche :
- Validez. La fenêtre de description de la requête est mise à jour :
- Validez la fenêtre de description de la requête. La requête apparaît sous l'éditeur :
- Enregistrez la requête (Ctrl + S).
- Visualisez le code SQL en appuyant sur la touche F2 :
- Testez la requête (GO dans les boutons d'accès rapide).
- La requête peut être exécutée dans le programme à l'aide de la fonction HExécuteRequête.
Requête SQL de comptage sur un regroupement Il est possible de créer une requête qui compte les enregistrements suivant un critère de regroupement. Dans cet exemple, nous allons réaliser le comptage du nombre de clients par département. Les étapes pour réaliser une requête de type Comptage sur un regroupement sont les suivantes : - Créez une requête de type Comptage (voir paragraphe précédent).
- Sélectionnez dans le fichier de données la rubrique servant d'argument de regroupement. Dans notre exemple, nous allons choisir le code postal.
- Ajoutez cette rubrique aux rubriques de la requête (double-cliquez sur le nom de la rubrique par exemple).
- Nous allons ajouter une nouvelle action, pour réaliser un regroupement seulement sur le département. Dans la partie droite de la fenêtre de description, cliquez sur "Année, département" et sélectionnez l'option "Département". La fenêtre suivante s'affiche :
- Validez. La fenêtre de description de la requête est mise à jour :
- Validez la fenêtre de description de la requête. La requête apparaît sous l'éditeur :
- Enregistrez la requête (Ctrl + S).
- Visualisez le code SQL en appuyant sur la touche F2 :
- Testez la requête (GO dans les boutons d'accès rapide).
- La requête peut être exécutée dans le programme à l'aide de la fonction HExécuteRequête.
Requête SQL de comptage sur un regroupement en programmation Les requêtes SQL peuvent être écrites directement par programmation dans le code. Pour cela, il faut : - Créer une variable de type Source de données pour représenter la requête en exécution
- Créer une variable de type chaîne de caractères pour contenir le code SQL et écrire le code SQL dans cette variable
- Exécuter la requête SQL à l'aide de la fonction HExécuteRequêteSQL
- Parcourir le résultat à l'aide des fonctions HLitXXX.
Exemple de code Src1 est une Source de Données
sCodeSQL est une chaîne
sCodeSQL = [
SELECT REGLEMENT.LibReglement, COUNT(COMMANDE.IDCommande) AS NombreCommandes
FROM COMMANDE, REGLEMENT
WHERE COMMANDE.IDReglement=REGLEMENT.IDReglement
GROUP BY LibReglement
]
HExécuteRequêteSQL(Src1, hRequêteDéfaut, sCodeSQL)
POUR TOUT Src1
Trace(Src1.LibReglement, Src1.NombreCommandes)
FIN
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|