En business intelligence, il est fréquent de demander des rapports contenant seulement les x premiers articles. Il peut s'agir, par exemple, des cinq produits les plus vendus aux Etats-Unis : nul besoin dans ce cas d'une longue liste contenant tous les produits. Ici, la V5R1 ajoute la clause Fetch First
Souplesse de l’interrogation et du reporting
n Rows Only, de sorte que l’on peut obtenir ce type de rapport avec une seule instruction SQL. Voici un exemple d’utilisation de cette nouvelle clause pour obtenir les cinq produits les plus vendus :
Select ProductItem,
Count(*) As ItemCount
From Orders
Where Territory = ‘US'
Group By Product_Item
Order By ItemCount Desc
Fetch First 5 Rows Only
Fetch First n Rows Only fournit un jeu de résultats plus petit. Ce qui favorise les performances des applications client ODBC et JDBC, puisque moins de données sont envoyées sur le réseau.
Un nouveau support de Right Outer Join accroît également la souplesse de développement de rapports analytiques. La requête suivante utilise un Right Outer Join pour renvoyer les classes auxquelles un professeur est affecté, ainsi que celles auxquelles un professeur n’est pas affecté. Pour ces dernières, un Right Outer Join renverra des valeurs nulles pour le nom et le titre du professeur :
Select T.Name, T.Title, C.Subject
From Teachers As T
Right Out Join
Classes As C
On T.name = C.TeacherName
En complément de cette nouvelle fonctionnalité de jointure (join), IBM a également amélioré l’optimiseur de requête afin de mieux optimiser les requêtes jointes complexes qui contiennent un mélange de jointures externes et internes. Cette meilleure optimisation des jointures accélèrera l’exécution des requêtes.
Un subselect scalaire est une instruction Select imbriquée qui renvoie une valeur scalaire (c’est-à -dire, une ligne avec exactement une colonne). Dans les releases antérieures, on ne pouvait imbriquer des subselect scalaires que dans une clause Where ou Having. Avec la V5R1, on peut également utiliser une sous-requête scalaire sur la clause Select. Voici un exemple d’utilisation d’un subselect scalaire pour donner la liste de tous les détails d’un département situé à Rochester :
Select D.DeptNo,
D.DeptName
( Select Max( Salary )
From Emp As E
Where E.DeptNo = D.Dept.no )
As MaxSalary
From Dept As D
Where D.Location = ‘Rochester'
Dans cet exemple, tout département de Rochester n’ayant pas d’employés apparaîtra dans le jeu de résultats avec une valeur nulle pour son salaire maximum. C’est différent de l’exemple suivant, qui effectue une requête semblable avec une jointure plus traditionnelle. Dans ce cas, les départements sans employés ne sont pas inclus dans le jeu de résultats :
Select D.DeptNo,
D.DeptName
Max( E.Salary ) As MaxSalary
From Dept As D,
Emp As E
Where D.DeptNo = E.DeptNo
And D.Location = ‘Rochester'
Group By D.DeptNo, D.DeptName
Lorsque beaucoup de rapports doivent effectuer des recherches floues avec la clause Like, la V5R1 procure une plus grande souplesse. On peut désormais utiliser des expressions sur la clause Like et la définition de caractère escape. La requête SQL suivante utilise une expression avec concaténation (½½) pour trouver tous les employés habitant dans la même rue que John Doe :
Select OtherEmp.Name
From Employee As OtherEmp
Where OtherEmp.Address Like = ‘John Doe'
And OtherEmp.name <> ‘John Doe'
And MainEmp.Address
Like ‘%' ½½ S.Street ½½ '%'
And OtherEmp.Address
Like ‘%' ½½ S.Street ½½ '%'
IBM a également amélioré les performances de deux manières. Tout d’abord, l’implémentation système du traitement Like a été modifiée de manière à ne plus utiliser un ODP (open data path) non réutilisable pour des requêtes Like complexes. Ensuite, l’optimiseur de requête peut désormais utiliser un index pour rendre une recherche plus performante quand la clause Like fait référence à des données double octet (donnée unicode, par exemple).
Téléchargez cette ressource
Construire une infrastructure cloud optimisée pour l’IA avec Microsoft Azure
Les managers IT ont besoin d’une stratégie claire et de solutions concrètes pour préparer leur infrastructure cloud à l'adoption de l'IA, tout en optimisant les coûts, renforçant la sécurité et développant les compétences internes. Découvrez tous les conseils dans ce guide Insight.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Souveraineté numérique : réinvestir les fondations pour sortir de la dépendance à Microsoft
- L’essor de l’IA propulse les cyberattaques à des niveaux records
- L’IA sous contrôle : un impératif pour la souveraineté des entreprises
- CESIN : un baromètre qui mesure le risque cyber réel
Articles les + lus
CES 2026 : l’IA physique et la robotique redéfinissent le futur
Les 3 prédictions 2026 pour Java
Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
Face à l’urgence écologique, l’IT doit faire sa révolution
D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
À la une de la chaîne Tech
- CES 2026 : l’IA physique et la robotique redéfinissent le futur
- Les 3 prédictions 2026 pour Java
- Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
- Face à l’urgence écologique, l’IT doit faire sa révolution
- D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
