< Précédent | Suivant >

Spécification des colonnes de résultat

Dans cet exercice, vous allez indiquer les colonnes devant être affichées dans le résultat de la requête. Un employé de vidéo-club doit connaître le nom du client, le titre de chaque film loué par le client, et le jour où ces films doivent être restitués. Vous allez inclure deux des colonnes et ajouter une expression CASE pour la troisième colonne de résultat, puis attribuer un alias à l'expression de colonne CASE.

Sélection de colonnes pour l'ensemble de colonnes de résultat

Vous allez ajouter les colonnes suivantes à l'ensemble de colonnes de résultat, pour le nom de client et le titre de film :
  • la colonne NAME de la table CUSTOMERS
  • la colonne TITLE de la table VIDEOS

Pour sélectionner des colonnes à intégrer dans l'ensemble de colonnes de résultat, procédez comme suit :

  1. Dans le panneau Tables, sélectionnez la case à cocher NAME dans la table C (CUSTOMER).
  2. Sur la page Colonnes du panneau Conception, cliquez deux fois sur la première cellule vide dans la colonne Colonne, cliquez sur V.TITLE dans la liste, puis appuyez sur Entrée. Les colonnes sont ajoutées au code source SQL dans le panneau Source SQL.

Ajout d'une expression CASE à l'ensemble de colonnes de résultat

La troisième colonne de l'ensemble de résultats de la requête correspond à une expression de colonne. La base de données d'un vidéo-club stocke la date de retour d'un film au format DATE. Le format DATE doit être converti en chaîne de caractères contenant le nom du jour de retour du film. Une fonction de base de données extrait un entier à partir de la date, qui correspond au jour de la semaine. Vous allez utiliser une expression CASE pour évaluer la fonction et convertir les entiers renvoyés par la fonction en chaînes de caractères pour chaque jour de la semaine (par exemple, 1 sera changé en "Dimanche" dans le résultat de la requête).
Vous allez effectuer les activités suivantes pour créer l'expression CASE :
  • Ouvrez l'assistant Générateur d'expression.
  • Créez une expression CASE de type simple.
  • Ajoutez la fonction DAYOFWEEK pour l'évaluation par l'expression CASE. La fonction DAYOFWEEK permet d'extraire le jour de la semaine à partir de la colonne DATE. Cette fonction renvoie un entier qui correspond au jour de la semaine.
  • Ajoutez des clauses WHEN pour générer les résultats pour l'expression CASE.

Pour ajouter une expression CASE, procédez comme suit :

  1. Sur la page Colonnes du panneau Conception, cliquez deux fois sur la troisième cellule de la colonne Colonne (première cellule vide), puis sur Générer l'expression à la fin de la liste, et appuyez sur la touche Entrée. L'assistant Générateur d'expression s'affiche.
  2. Créez une expression CASE de type simple.
    1. Sur la page Types d'expressions, cliquez sur CASE - de recherche ou simple, puis sur Suivant.
    2. Sur la page Options CASE, cliquez sur Clause WHEN simple, puis sur Suivant.
  3. Ajoutez la fonction DAYOFWEEK :
    1. Sur la page Expression CASE simple, dans la liste CASE, cliquez sur Générer l'expression de fonction. L'assistant Générateur d'expression de fonction s'affiche.
    2. Dans la liste Sélectionnez une catégorie de fonction, cliquez sur Date et heure.
    3. Dans la liste Sélectionnez une fonction, cliquez sur DAYOFWEEK.
    4. Dans la liste Sélectionnez une signature de fonction, cliquez sur DAYOFWEEK(DATE) --> INTEGER. La signature de fonction indique que la fonction requiert un argument.
    5. Dans la colonne Valeur de la table des arguments, cliquez deux fois sur la cellule, puis sur R.DATE dans la liste, et pour finir appuyez sur la touche Entrée. La syntaxe de l'expression de fonction est DAYOFWEEK(DATE), comme indiqué à la section 5 de l'illustration suivante :

      Assistant Générateur d'expression de fonction

      Notez que le qualificateur de table R de la colonne DATE sélectionnée n'est pas affiché dans cet assistant. Il sera affichée dans l'expression lorsque vous reviendrez dans le générateur SQL.
    6. Cliquez sur Terminer pour revenir à la construction de l'expression CASE.
    7. Dans la liste CASE, sélectionnez DAYOFWEEK(DATE).
  4. Ajoutez sept clauses WHEN à l'expression CASE (une pour chaque jour de la semaine) pour convertir l'entier renvoyé par la fonction DAYOFWEEK en chaînes de caractères. Le tableau suivant affiche la chaîne de caractères nécessaire pour chaque valeur renvoyée par la fonction DAYOFWEEK :
    Tableau 1. Valeurs DAYOFWEEK et chaînes de caractères correspondantes
    Valeur DAYOFWEEK Chaîne de caractères générée
    1 'Dimanche'
    2 'Lundi'
    3 'Mardi'
    4 'Mercredi'
    5 'Jeudi'
    6 'Vendredi'
    7 'Samedi'
    1. Dans le tableau, cliquez deux fois sur la cellule vide dans la colonne Expression, à la droite de WHEN, puis entrez l'entier 1. Pour que l'entrée soit prise en compte lorsque vous entrez les données dans cette table et dans les autres tables associées au générateur SQL, vous devez appuyer sur la touche Entrée ou activer une autre cellule après avoir entré une valeur dans une cellule.
    2. Cliquez deux fois sur la cellule vide dans la colonne Expression de résultat, à la droite de THEN, puis entrez la chaîne 'Dimanche'.
    3. Pour chacun des six jours restants, cliquez sur Ajouter une clause WHEN, puis répétez les étapes 4a et 4b afin que votre table ait le même aspect que l'illustration présentée ici :

      Table de clause WHEN terminée

    4. Cliquez sur Terminer pour fermer l'assistant Générateur d'expression.
L'expression CASE terminée est affichée dans la liste des expressions de colonne sur la page Colonnes du panneau Conception, et s'affiche également dans la source de l'instruction SQL.

Ajout d'un alias de colonne

Dans l'instruction SQL customerRentals, vous allez ajouter un alias de colonne pour l'expression de colonne CASE. Vous allez utiliser la page Colonnes dans le panneau Conception du générateur SQL.

Pour ajouter un alias de colonne, procédez comme suit :

  1. Cliquez sur l'onglet Colonnes du panneau de conception.
  2. Cliquez sur la cellule dans la colonne Alias, en regard de l'expression de colonne CASE, puis entrez DUEDAY. Dans le panneau Source SQL, l'alias de colonne AS DUEDAY est affiché après l'expression CASE. Lorsque vous exécutez la requête, cet alias apparaît en tant que titre de la colonne dans la table de résultats.
La page Colonnes a maintenant l'aspect de l'illustration suivante :

Panneau Conception - Page Colonnes achevée

< Précédent | Suivant >

Commentaires en retour