Table des matières
Comprendre la syntaxe ntile
Exemple simple: diviser les données en quartiles
Utilisation de Ntile avec des partitions
Notes clés lors de l'utilisation de Ntile
Maison base de données SQL Comment utiliser la fonction de fenêtre NTILE pour le classement dans SQL?

Comment utiliser la fonction de fenêtre NTILE pour le classement dans SQL?

Sep 24, 2025 am 03:05 AM
sql Fonction ntile

NTILE divise un résultat réglé en groupes de taille égale; Par exemple, NTILE (4) crée des quartiles en classant les lignes en fonction d'une clause d'ordre par et attribuant chaque ligne à l'un des quatre groupes, avec des groupes antérieurs recevant des lignes supplémentaires si le nombre n'est pas divisible.

Comment utiliser la fonction de fenêtre NTILE pour le classement dans SQL?

La fonction NTILE dans SQL est une fonction de fenêtre qui divise un résultat défini en un nombre spécifié de groupes ou de "tuiles" à peu près égaux et attribue un numéro de tuile à chaque ligne. Il est utile pour le classement ou la distribution de données en centiles, quartiles, déciles ou tout segment de taille égale.

Comprendre la syntaxe ntile

La syntaxe de base de NTILE est:

Ntile (n) over (Order by Column_name [asc | desc])
  • N : le nombre de groupes dans lesquels vous souhaitez diviser les lignes.
  • Over () : définit la fenêtre - le partitionnement et l'ordre des lignes.
  • Ordre par : détermine comment les lignes sont triées avant d'être divisées.

Par exemple, NTILE (4) divise les données en 4 groupes (quartiles), tandis que NTILE (100) peut être utilisé pour les centiles.

Exemple simple: diviser les données en quartiles

Supposons que vous ayez une table Sales_team avec les chiffres des ventes des employés:

Sélectionnez Nom, Sales, Ntile (4) Over (Order by Sales DESC) comme quartile de Sales_Team;

Cette requête classe les employés par les ventes et les divise en 4 groupes égaux. Les 25% les plus élevés des salariés obtiennent le quartile 1, les 25% suivants obtiennent 2, etc.

Utilisation de Ntile avec des partitions

Vous pouvez également appliquer NTILE dans des catégories spécifiques à l'aide de la clause Partition by . Par exemple, pour classer les employés de chaque département:

Sélectionnez le nom, le département, les ventes, NTILE (3) Over (Partition par Order Order by Sales DESC) AS PERFORMANCE_GROUP de Sales_Team;

Cela divise les employés de chaque département en 3 niveaux de performance - élevés, moyens, faibles - indépendamment des autres départements.

Notes clés lors de l'utilisation de Ntile

  • Si le nombre de lignes n'est pas uniformément divisible par N , les groupes antérieurs auront un membre de plus que ceux ultérieurs.
  • NTILE attribue des numéros de groupe à partir de 1.
  • Il est mieux utilisé lorsque vous avez besoin d'une distribution même, pas de classement strict comme Rank () ou Row_number ().
  • Les questions de commande - incluent toujours l'ordre par inside over () pour contrôler comment les groupes sont formés.

Fondamentalement, NTILE aide à catégoriser les données classées en seaux gérables de taille égale pour l'analyse.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Stock Market GPT

Stock Market GPT

Recherche d'investissement basée sur l'IA pour des décisions plus intelligentes

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment comparer une colonne à plusieurs valeurs dans SQL? Comment comparer une colonne à plusieurs valeurs dans SQL? Sep 16, 2025 am 02:12 AM

Utilisez l'opérateur In pour comparer efficacement les colonnes avec plusieurs valeurs, telles que Select * FrowemployeeswheredPartment_idin (1,2,3); Utilisez Notin si plusieurs valeurs sont exclues, mais faites attention aux NULL affectant le résultat.

Quelle est la différence entre une sous-requête et un CTE dans SQL? Quelle est la différence entre une sous-requête et un CTE dans SQL? Sep 16, 2025 am 07:47 AM

Les sous-requêtes sont des requêtes imbriquées dans une autre requête. Ils conviennent à des calculs uniques simples et peuvent être situés dans certains, à partir des clauses ou où les clauses; 2. CTE est défini avec des clauses pour améliorer la lisibilité des requêtes complexes et de la récursivité de soutien et de multiples références; 3. Les sous-requêtes conviennent à un usage unique, et le CTE convient plus aux scénarios où une structure, une réutilisation ou une récursivité claires est requise.

Comment utiliser la fonction sonore pour les recherches phonétiques dans SQL? Comment utiliser la fonction sonore pour les recherches phonétiques dans SQL? Sep 21, 2025 am 01:54 AM

La fonction SoundEx convertit le texte en un code à quatre caractères représentant la prononciation, ajoute trois chiffres à la première lettre, ignore les voyelles et les lettres spécifiques, et cartographie des consonnes avec des prononciations similaires au même nombre, réalisant la recherche basée sur la prononciation. Par exemple, Smith et Smythe génèrent tous deux S530, et les noms avec des prononciations similaires peuvent être trouvés via WhereSoundEx (Last_name) = SoundEx ('Smith'). Combiné avec la fonction de différence, il peut renvoyer un score de similitude de 0 à 4, filtrez les résultats de la projection de la prononciation, ce qui convient au traitement des différences d'orthographe, mais a un effet limité sur les noms non anglophones, et l'optimisation des performances doit être accordée à l'attention.

Comment trouver des enregistrements orphelins dans une table SQL? Comment trouver des enregistrements orphelins dans une table SQL? Sep 17, 2025 am 04:51 AM

ToFindorphaneDrecords, usealeftjoinornotexiststoidentifyChildRecordswithoutmatchingPaRentRecords.forexample, selecto.fromordersoleftjoinoistomerscono.customer_id = c.Customer_idwherec.Customer_idisnullredSordersLinkEdtonon-ExistCustomerSers.AltervatIverv.

Comment ajouter un commentaire à une table ou à une colonne dans SQL? Comment ajouter un commentaire à une table ou à une colonne dans SQL? Sep 21, 2025 am 05:22 AM

USECOMmentOnColumnoralterTablewithCommentToDocumentTables etColumnSinsQL; SyntaxVariesByDBMS - PostgreSQLandoracleUseCommenton, MySQLUSESCommentIncreate / Alterstatements, andcomementsCanBeviewEdViaSystemtslienformations_schema, ButsqliTelackSSUPPort.

Comment effectuer une jointure non équivalente dans SQL? Comment effectuer une jointure non équivalente dans SQL? Sep 16, 2025 am 07:37 AM

Anon-equijoinusses composé des opérateurs comme entre,> =, ou! = TomatchRowsBetWeentables.2.

Comment obtenir le dernier jour du mois pour une date donnée dans SQL? Comment obtenir le dernier jour du mois pour une date donnée dans SQL? Sep 18, 2025 am 12:57 AM

Utilisez la fonction Last_day () (MySQL, Oracle) pour obtenir directement le dernier jour du mois où la date spécifiée est, comme Last_day ('2023-10-15') pour retourner 2023-10-31; 2. SqlServer utilise la fonction eomonth () pour atteindre la même fonction; 3. PostgreSQL calcule la fin du mois via date_trunc et intervalle; 4. Sqlite utilise la fonction de date pour combiner «startofmonth», «1 mois» et «-1day» pour obtenir les résultats.

Comment trouver toutes les tables avec un nom de colonne spécifique dans SQL? Comment trouver toutes les tables avec un nom de colonne spécifique dans SQL? Sep 05, 2025 am 07:13 AM

Pour trouver toutes les tables contenant des noms de colonnes spécifiques, cela peut être effectué en interrogeant la table des métadonnées système, la méthode la plus courante consiste à utiliser l'information_schema.columns. 1. Dans SQL standard, exécutez selectTable_namefrominformation_schema.columnswherecolumn_name = 'your_column_name' pour renvoyer tous les noms de table dans la colonne spécifiée. Si vous avez besoin de définir un schéma ou une base de données spécifique, vous pouvez ajouter les conditions de table_schema ou de table_catalogue. 2. Dans SQLServer, vous pouvez utiliser SYS.Columns et Sys.TA

See all articles