Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Dans ce blog, nous aborderons certaines expressions de table courantes, également appelées CTE . Si vous rencontrez des problèmes complexes, l'utilisation de ces expressions de table SQL peut vous aider.

Avec CTE , vous pouvez décomposer n'importe quelle tâche en petites requêtes gérables pour résoudre des problèmes complexes.

Voyons maintenant comment CTE peut rendre votre travail plus efficace dans les codes de dépannage.

Table des matières

Syntaxe pour la création d'expressions de table SQL communes 

Tout d'abord, vous devez taper « AVEC » suivi de votre nom d'expression CTE , suivi de « AS ».

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Après cela, vous pouvez fournir toutes les requêtes entre parenthèses. Celui-ci sera stocké dans le nom d'expression fourni qui fonctionnera comme une table virtuelle.

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Ensuite, ajoutez une instruction SELECT à l'aide de la table virtuelle que vous avez créée via le nom d'expression que vous avez défini.

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Pour notre exemple, nous utiliserons « USACusts » pour le nom de l'expression .

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Et pour la requête, nous utiliserons ce code. 

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Cette requête créera une table virtuelle. Il affichera un montant total ou agrégé regroupé par ID client où le pays auquel il appartient est « États-Unis ». Les données seront extraites de la table Sales.Customers .

Deux colonnes seront visibles, qui sont custid et Agg_Amount . Notez que la table USACusts n'est pas une table physique mais uniquement une table virtuelle. Cela signifie qu'il ne sera pas visible dans notre base de données.

Après la requête, nous pouvons alors ajouter une instruction SELECT .

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Cette instruction sélectionnera tous les Agg_Amount supérieurs à 1 000 dans la table USACusts .

Plusieurs expressions de table SQL communes 

Plusieurs CTE peuvent vous aider à résoudre des erreurs complexes dans votre code en les décomposant en plus petits morceaux. De plus, vous pouvez définir autant de CTE que vous le souhaitez. Vous trouverez ci-dessous un exemple de CTE multiples .

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Pour cet exemple, nous avons le premier CTE qui est C1 . À partir de là, nous avons sélectionné YEAR(orderdate) et créé 2 colonnes qui sont orderyear et custid à partir de la table Sales.Orders .

Pour le deuxième CTE nommé C2 , nous avons sélectionné orderyear et collecté le nombre de custid à l'aide de la commande COUNT . Ensuite, nous l'avons nommé numcusts de C1 . Une condition WHERE a également été ajoutée dans C2 pour sélectionner uniquement l' année de commande supérieure à 2015 . Puis nous les avons regroupés par année de commande .

Après cela, nous avons sélectionné l' année de commande et les nombres de C2 . Ensuite, nous avons ajouté une condition WHERE pour sélectionner uniquement le nombre de clients supérieur à 500 .

En résumé, ce code est utilisé pour sélectionner les clients dont l' année de commande est supérieure à 2015 et sélectionner uniquement le nombre de clients supérieurs à 500 en fonction de la condition de l' année de commande .

Utilisation de plusieurs CTE pour résoudre des codes complexes

Ensuite, je vais montrer d'autres exemples pour souligner davantage l'utilisation des CTE dans le dépannage d'un grand ensemble de données. Voici un autre exemple de CTE multiples .

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Veuillez noter que vous pouvez nommer les CTE comme vous le souhaitez, mais pour ce blog, nous utilisons C1 , C2 , C3 , etc. pour identifier et comprendre facilement comment nous les utilisons dans nos exemples.

Pour en revenir à l'exemple, nous avons créé C1 pour sélectionner uniquement les ventes dont la quantité commandée est supérieure à 5 dans la table Sales.SalesOrderDetails .

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Ensuite, dans C2 , nous avons utilisé les données que nous avons stockées dans C1 pour joindre le produit en fonction de Product.ID et les avons regroupées par nom de produit (p.Name) et couleur de produit (p.Color) .

Comme nous avons déclaré une condition en C1 , nous ne regrouperons le nom du produit et la couleur du produit en C2 que pour les commandes dont la quantité commandée (OrderQty) est supérieure à 5 .

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Après cela, nous utiliserons une commande pour sélectionner toutes les données de C2 avec une quantité de commande supérieure à 1000 .

À des fins de dépannage, vous pouvez simplement sélectionner chacun des CTE que vous avez créés pour vérifier s'il affiche les données correctes. Reportez-vous aux exemples ci-dessous.

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Pour C1 , il affiche toutes les données de la table Sales.SalesOrderDetail avec une quantité de commande supérieure à 5 .

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Ensuite, C2 affiche une sortie de la quantité de commande regroupée par nom de produit et couleur à partir de C1 . Dans C2 , nous pouvons voir la colonne orderqty mais nous ne l'avons pas dans C2 car c'est juste une colonne calculée que nous avons générée à partir de C1 . À partir de là, nous pouvons alors commencer à utiliser n'importe quelle condition sur la colonne orderqty et effectuer le dépannage.

Ainsi, vous pouvez maintenant voir comment plusieurs CTE peuvent nous aider à résoudre les erreurs dans des codes complexes en les stockant dans des CTE et commencer le dépannage sans endommager le code réel.

Utilisation des CTE avec l'énoncé de cas

Prenons un autre exemple avec le même contexte pour montrer comment nous pouvons utiliser plusieurs CTE pour dépanner des codes complexes. 

Dans ce cas, nous allons utiliser une instruction CASE qui créera une colonne Product Category avec des résultats basés sur le montant agrégé de orderqty de C2 .

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Comme mentionné précédemment, nous n'avions pas de quantité de commande dans le premier CTE ni dans la catégorie de produits , mais nous avons utilisé des tables intermédiaires pour calculer et effectuer différents calculs.

Dans l'exemple suivant, nous allons créer un montant agrégé basé sur la catégorie de produit que nous avons créée dans l'exemple précédent. Mais pour ce faire, nous allons mettre l' instruction CASE pour la catégorie de produit dans le troisième CTE qui est C3 .

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Avant de continuer, vérifions la sortie de C3 en ajoutant " SELECT * FROM C3 " sous C3 .

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Dans C3, nous pouvons voir les colonnes ProductName , Color , orderqty et Product Category . À partir de là, nous pouvons commencer à agréger en fonction de la catégorie de produits . Faisons cela en utilisant la commande suivante sous C3 .

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

L'exemple ci-dessous est le résultat après la création d'un montant agrégé à l'aide de la commande ci-dessus.

Expressions de table SQL courantes pour les utilisateurs de LuckyTemplates

Au départ, nous n'avions pas les colonnes Product Category et orderqty , mais nous sommes en mesure de générer des exemples de sortie basés sur ces colonnes en utilisant plusieurs CTE .

À ce stade, vous pouvez voir que nous pouvons tout faire avec l'aide des CTE pour travailler plus efficacement avec nos codes.

Tables et vues temporaires SQL pour
le filtre utilisateur LuckyTemplates dans SQL à l'aide de IN, NOT IN, LIKE et NOT LIKE
Extraction de données SQL à l'aide de OFFSET et FETCH

Conclusion

Dans ce didacticiel, vous avez appris la syntaxe appropriée pour créer des expressions de table SQL communes et comment utiliser plusieurs CTE pour dépanner des codes complexes en isolant de petites parties de données et en les stockant dans un CTE donné .

En apprenant cela, vous avez maintenant la possibilité de déboguer vos codes plus efficacement. N'oubliez pas que vous pouvez utiliser n'importe quel nom pour CTE et que vous ne pouvez pas utiliser ou appeler de CTE à moins qu'il ne soit créé. Une fois familiarisé avec CTE , vous pouvez vous considérer comme un utilisateur intermédiaire de SQL .

Si vous souhaitez en savoir plus sur ce sujet et d'autres contenus connexes, vous pouvez certainement consulter la liste des liens pertinents ci-dessous.

Tous mes vœux,

Hafiz


Quest-ce que le self en Python ? Exemples concrets

Quest-ce que le self en Python ? Exemples concrets

Qu'est-ce que le self en Python ? Exemples concrets

Comment enregistrer et charger un fichier RDS dans R

Comment enregistrer et charger un fichier RDS dans R

Vous apprendrez à enregistrer et à charger des objets à partir d'un fichier .rds dans R. Ce blog expliquera également comment importer des objets de R vers LuckyTemplates.

First N Business Days Revisited - Une solution de langage de codage DAX

First N Business Days Revisited - Une solution de langage de codage DAX

Dans ce didacticiel sur le langage de codage DAX, découvrez comment utiliser la fonction GENERATE et comment modifier dynamiquement le titre d'une mesure.

Présentez des informations à laide de la technique des visuels dynamiques multi-threads dans LuckyTemplates

Présentez des informations à laide de la technique des visuels dynamiques multi-threads dans LuckyTemplates

Ce didacticiel explique comment utiliser la technique Multi Threaded Dynamic Visuals pour créer des informations à partir de visualisations de données dynamiques dans vos rapports.

Introduction au filtrage du contexte dans LuckyTemplates

Introduction au filtrage du contexte dans LuckyTemplates

Dans cet article, je vais parcourir le contexte du filtre. Le contexte de filtrage est l'un des principaux sujets que tout utilisateur de LuckyTemplates doit d'abord connaître.

Meilleurs conseils pour utiliser les applications dans le service en ligne LuckyTemplates

Meilleurs conseils pour utiliser les applications dans le service en ligne LuckyTemplates

Je souhaite montrer comment le service en ligne LuckyTemplates Apps peut aider à gérer différents rapports et informations générés à partir de diverses sources.

Analyser les changements de marge bénéficiaire au fil du temps - Analytics avec LuckyTemplates et DAX

Analyser les changements de marge bénéficiaire au fil du temps - Analytics avec LuckyTemplates et DAX

Découvrez comment calculer les modifications de votre marge bénéficiaire à l'aide de techniques telles que la création de branches de mesure et la combinaison de formules DAX dans LuckyTemplates.

Idées de matérialisation pour les caches de données dans DAX Studio

Idées de matérialisation pour les caches de données dans DAX Studio

Ce didacticiel abordera les idées de matérialisation des caches de données et comment elles affectent les performances des DAX dans la fourniture de résultats.

Rapports dentreprise à laide de LuckyTemplates

Rapports dentreprise à laide de LuckyTemplates

Si vous utilisez encore Excel jusqu'à présent, c'est le meilleur moment pour commencer à utiliser LuckyTemplates pour vos besoins en matière de rapports commerciaux.

Quest-ce que la passerelle LuckyTemplates ? Tout ce que tu as besoin de savoir

Quest-ce que la passerelle LuckyTemplates ? Tout ce que tu as besoin de savoir

Qu'est-ce que la passerelle LuckyTemplates ? Tout ce que tu as besoin de savoir