Dans SQL standard, la fonction NTILE peut être exprimée comme indiqué:
Ntile (const_int_expr)La fonction divisera les lignes dans les pièces const_int_int_intr_intr_intime définies en fonction de l'ordre des lignes et renvoie un numéro de pièce basé sur 1 qui est attribué à chaque ligne.
Pour une syntaxe plus verbeuse et explicite, nous pouvons l'exprimer comme indiqué:
Ntile (parties) sur (Le paramètre des pièces définit le nombre total de pièces dans lesquelles les lignes sont divisées. La valeur doit être un entier ou une requête qui renvoie un entier positif.
La clause de partition par définira l'expression qui sépare les lignes en ensembles de sections. La fonction ntile est ensuite appliquée à ces partitions.
La commande par spécifiera l'ordre dans lequel les lignes sont commandées. Ceci est appliqué dans chaque partition.
SQL NTILE - Exemple pratique
Pour illustrer l'utilisation de la fonction NTILE, utilisons un exemple pratique. Commencez par créer une base de données pour stocker les exemples de données.
Créer une base de données ntile_db;Passez à la base de données et créez une table comme indiqué:
créer des employés de table (NOTE: La requête ci-dessus est fournie pour les bases de données postgresql. N'hésitez pas à changer la requête ci-dessus pour correspondre à la base de données souhaitée.
Une fois que vous avez défini le schéma de table, nous pouvons procéder et ajouter des données d'échantillonnage. Exécutez la requête ci-dessous pour ajouter des exemples de données.
Ce qui précède ajoute des exemples de données au tableau. Nous utiliserons ces données pour illustrer comment utiliser la fonction NTILE.
Exemple 1
Utilisons la fonction ntile pour diviser les données ci-dessus en 3 lignes distinctes en fonction de la catégorie.
Sélectionner l'ID,La requête ci-dessus doit partitionner le résultat par la catégorie et appliquer la fonction ntile. Le tableau résultant est illustré ci-dessous:
Fermeture
En utilisant cet article, nous avons découvert comment fait la fonction ntile et comment l'utiliser. Vérifiez la documentation de votre moteur de base de données pour explorer plus.
Merci d'avoir lu!!