> Tech > La V5R4 donne un coup de fouet à  SQL

La V5R4 donne un coup de fouet à  SQL

Tech - Par iTPro.fr - Publié le 24 juin 2010
email

La plupart des nouvelles releases de DB2 UDB for iSeries incluent des améliorations progressives de SQL, comme de nouveaux types de données et de nouvelles fonctions intégrées. La V5R4 n’est pas différente à cet égard et présente de nouvelles fonctions intégrées pour le cryptage Triple DES, le traitement des dates et les fonctions d’échantillonnage. Par Kent Milligan - Dossier publié en Mai 2006

 

 

 

 

 

 

Les fonctions de SQL V5R4 dont il est question ici exigent le SQE (SQL Query Engine). Par conséquent, si votre environnement ou votre requête SQL contient un attribut non reconnu par SQE et si vous essayez d’utiliser l’une de ces nouvelles fonctions SQL, DB2 UDB signalera une erreur.

Voici quelques-uns des facteurs qui empêchent SQE d’honorer une requête SQL :

 

 

 

 

Utilisation de la fonction UPPER , LOWER ou TRANSLATE

Séquence de tri en langue nationale

UDTF (user-defined table function)

Références de fichier logique sur la clause FROM

Fichiers logiques select/omit définis sur la table sousjacente

Pour plus de détails sur le support SQE, visitez www.ibm.com/iseries/db2/sqe.html.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

La V5R4 donne un coup de fouet à  SQL

En ordonnant les résultats d’une requête, vous aimeriez parfois appliquer un classement qui mette en évidence un autre attribut (par exemple, fournir une liste de vendeurs en ordre alphabétique, plus leur classement d’après le chiffre d’affaires total). La figure 1 montre un exemple de requête mettant en action cette syntaxe. La clause ORDER BY classe la liste des joueurs de baseball en ordre alphabétique, pour trouver facilement un joueur.

L’expression OLAP Rank() fournit un classement secondaire lié à l’instruction SELECT en utilisant le nouveau mot-clé OVER. Ce classement secondaire (c’est-à-dire, OVER(ORDER BY batting_avg DESC)) génère les critères de classement pour l’ensemble des résultats.

Dans ce cas, le classement moyen de batting pour chaque joueur est inclus dans le résultat final et donc les joueurs sont classés d’après cette moyenne, en ordre décroissant. Ce classement permet d’identifier facilement les principaux marqueurs de la liste, comme le montre la sortie de requête de la figure 2. Voir Club Abonnés

La valeur soumise au classement n’est pas forcément limitée à une seule colonne. Le ORDER BY spécifié dans la clause OVER accepte toutes les possibilités d’une clause ORDER BY normale (expressions, colonnes multiples, par exemple). Il existe une seconde expression de classement appelée Dense_Rank. Rank et Dense_Ranke se comportent presque à l’identique sauf quand les valeurs classées contiennent des doublons.

En examinant de près les résultats de la figure 2, on voit que deux des marqueurs les plus faibles (Perez et Foster) avaient en fait la même moyenne de batting et donc partageaient le même rang. Dans ce cas, l’expression Rank a provoqué un vide dans le classement en sautant de 6 à 8, à cause de l’égalité à la sixième place. Si vous exécutez à nouveau la même requête avec l’expression Dense_Rank, vous verrez dans la sortie de la figure 3 qu’il n’y a pas de vide dans le classement. Foster et Perez partagent le sixième rang et le rang de Concepcion remonte en position 7.

 

 

Téléchargez gratuitement cette ressource

Les 7 étapes d’un projet de dématérialisation RH

Les 7 étapes d’un projet de dématérialisation RH

Dans ce livre blanc, nous vous donnons les clés pour concevoir votre projet de dématérialisation RH. Vous découvrirez chacune des étapes qui vous permettront d’apporter de nouveaux services aux collaborateurs, de vous adapter aux nouvelles pratiques et de renforcer la marque employeur.

Tech - Par iTPro.fr - Publié le 24 juin 2010