SQL est un langage de traitement d'ensemble, et pas un langage de traitement ligne à ligne. T-SQL, dialecte du langage SQL de Microsoft, peut utiliser des curseurs du serveur pour accéder à une ligne à la fois ; mais la plupart des solutions qui utilisent les curseurs du serveur seront
Tip 5 : Utilisez SQL efficacement
plusieurs fois plus lentes que des solutions qui utilisent les instructions SELECT et les instructions UPDATE pour effectuer la tâche équivalente. Plus l’expérience de programmation en SQL est grande, et plus on utilise facilement et efficacement le langage SQL. En tirant parti des fonctions telles que des sous-requêtes, des tables dérivées et des expressions CASE pour manipuler des ensembles de lignes, on accélèrera les solutions tout en accroissant les performances de SQL Server.
Supposons, par exemple, qu’une table contienne une ligne pour chaque produit en stock et qu’une autre table contienne une ligne pour la quantité de chaque vente de ce produit. Il convient de dénormaliser la base de données et de stocker la somme des ventes de chaque produit dans la table de stock du produit. Pour générer ces sommes, on pourrait utiliser un curseur et avancer dans la table des produits ligne à ligne. Pour chaque ligne, on pourrait ensuite trouver toutes les lignes correspondantes dans la table des ventes, additionner les quantités et utiliser cette somme pour mettre à jour la table de stock du produit. Dans cet exemple, on peut bien sûr utiliser des curseurs du serveur pour collecter les chiffres des ventes totales, mais c’est terriblement inefficace.
On peut effectuer la même tâche en utilisant l’instruction UPDATE suivante et la sous-requête associée. Cette instruction utilise la table des titres dans la base de données publicitaire comme table de produits et, pour chaque titre, l’instruction ajoute les valeurs dans le champ qty (quantité) de la table des ventes.
UPDATE titles
SET ytd_sales =
(SELECT sum(qty) FROM sales
WHERE title_id = titles
.title_id)
Téléchargez cette ressource
Microsoft 365 Tenant Resilience
Face aux failles de résilience des tenants M365 (configurations, privilèges, sauvegarde). Découvrez 5 piliers pour durcir, segmenter et surveiller vos environnements afin de limiter l’impact des attaques. Prioriser vos chantiers cyber et améliorer la résilience de vos tenants Microsoft 365.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Attaques IA : un Active Directory peut être compromis en 40 minutes
- L’application jetable, le piège de l’IA générative
- Cybersécurité : les entreprises françaises réclament un durcissement inédit de la réglementation
- Le tournant Mythos : les entreprises devront opposer des agents IA à des agents IA
Articles les + lus
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
Computex 2026 : 5 signaux forts à retenir
La chaîne d’approvisionnement, point de rupture récurent du SI
Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
À la une de la chaîne Tech
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
- Computex 2026 : 5 signaux forts à retenir
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
