Maison base de données Oracle Une brève discussion sur row_number(), Rank() et dense_rank() dans Oracle

Une brève discussion sur row_number(), Rank() et dense_rank() dans Oracle

May 13, 2020 pm 03:03 PM
oracle

L'article suivant vous parlera de row_number(), Rank() et dense_rank() dans Oracle. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Une brève discussion sur row_number(), Rank() et dense_rank() dans Oracle

Oracle : row_number(), Rank(), dense_rank()

Syntaxe : ROW_NUMBER( ) OVER();

row_number est très polyvalent. Il est préférable de l'utiliser pour le tri. Il générera un numéro de série pour chaque ligne d'enregistrements interrogés et les triera dans l'ordre. duplication. Remarque Lorsque vous utilisez la fonction row_number, vous devez utiliser la clause over pour sélectionner une colonne à trier afin de générer un numéro de séquence. La fonction

rank est utilisée pour renvoyer le classement de chaque ligne dans la partition de l'ensemble de résultats. Le classement d'une ligne est le nombre de classements précédents de la ligne concernée plus un. En termes simples, la fonction de classement classe les enregistrements interrogés. Différente de la fonction row_number, la fonction de classement prend en compte la situation dans laquelle les valeurs du champ de tri dans la clause over sont les mêmes si la fonction de classement est utilisée pour générer. un numéro de série, le champ de tri dans la clause over Les numéros de série avec la même valeur sont les mêmes. Les numéros de série avec des valeurs de champ différentes dans ce qui suit ignoreront le même numéro de classement et seront classés ensuite. la ligne correspondante plus un peut être comprise comme générant un numéro de séquence basé sur le nombre actuel d'enregistrements. Les enregistrements sont déduits et ainsi de suite. Les fonctions de la fonction

dense_rank sont similaires à la fonction Rank. La fonction dense_rank est continue lors de la génération de numéros de série, tandis que les numéros de série générés par la fonction Rank peuvent être discontinus. Lorsque le même classement apparaît dans la fonction dense_rank, le même numéro de classement ne sera pas ignoré et la valeur du classement suivra la valeur du classement précédent. Au sein de chaque groupe, Rank() est un tri par saut. Lorsqu'il y a deux premières places, la troisième place suivra. Lorsqu'il y a deux premières places, la deuxième place sera toujours suivie.

À propos de Partition by : Le mot-clé Parttion by fait partie de la fonction analytique d'Oracle et est utilisé pour partitionner l'ensemble de résultats. La différence entre elle et la fonction d'agrégation Group by est qu'elle classe uniquement les données d'origine et peut renvoyer plusieurs enregistrements dans un groupe (le nombre d'enregistrements reste inchangé), tandis que Group by agrège les statistiques sur les données d'origine et n'a généralement qu'une seule réponse. Résultats des valeurs statistiques (une par groupe renvoyée).

CONSEILS :

Lors de l'utilisation de Rank Over(), la valeur nulle est la plus grande. Si le champ de tri est nul, cela peut entraîner le classement du champ nul. d'abord, ce qui affectera les résultats du tri.

Cela peut être comme ceci : classement supérieur (partition par ordre de cours par score desc nulls en dernier)

Résumé :

Vous devez faire attention lors de l'utilisation de la fonction de classement Les trois points suivants :

1 La fonction de classement doit avoir une clause OVER.

2. La fonction de classement doit avoir une clause OVER contenant ORDER BY.

3. Le tri au sein du groupe commence à partir de 1.

Tutoriel recommandé : "Tutoriel Oracle"

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

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.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

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 vérifier la taille de l'espace de table d'Oracle Comment vérifier la taille de l'espace de table d'Oracle Apr 11, 2025 pm 08:15 PM

Pour interroger la taille de l'espace de table Oracle, suivez les étapes suivantes: Déterminez le nom de l'espace de table en exécutant la requête: sélectionnez Tablespace_name dans dba_tablespaces; Requête la taille de l'espace de table en exécutant la requête: sélectionnez SUM (Bytes) comme total_size, sum (bytes_free) comme disponible_space, sum (bytes) - sum (bytes_free) comme used_space à partir de dba_data_files où tablespace_

Comment crypter Oracle View Comment crypter Oracle View Apr 11, 2025 pm 08:30 PM

Oracle View Encryption vous permet de crypter les données dans la vue, améliorant ainsi la sécurité des informations sensibles. Les étapes incluent: 1) la création de la clé de cryptage maître (MEK); 2) Création d'une vue cryptée, spécifiant la vue et MEK à crypter; 3) Autoriser les utilisateurs à accéder à la vue cryptée. Comment fonctionnent les vues cryptées: lorsqu'un utilisateur interroge pour une vue cryptée, Oracle utilise MEK pour décrypter les données, garantissant que seuls les utilisateurs autorisés peuvent accéder aux données lisibles.

Comment désinstaller l'installation d'Oracle a échoué Comment désinstaller l'installation d'Oracle a échoué Apr 11, 2025 pm 08:24 PM

Désinstaller la méthode pour la défaillance de l'installation d'Oracle: Fermez le service Oracle, supprimez les fichiers du programme Oracle et les clés de registre, désinstallez les variables d'environnement Oracle et redémarrez l'ordinateur. Si la désinstallation échoue, vous pouvez désinstaller manuellement à l'aide de l'outil Oracle Universal Disinstal.

Comment afficher le nom d'instance d'Oracle Comment afficher le nom d'instance d'Oracle Apr 11, 2025 pm 08:18 PM

Il existe trois façons d'afficher les noms d'instance dans Oracle: utilisez le "SQLPlus" et "SELECT INSTRESS_NAME FROM V $ INSTERNE;" Commandes sur la ligne de commande. Utilisez "Show instance_name;" Commande dans SQL * Plus. Vérifiez les variables d'environnement (Oracle_sid sur Linux) via le gestionnaire de tâches du système d'exploitation, Oracle Enterprise Manager ou via le système d'exploitation.

Comment résoudre le problème de la fermeture d'Oracle Cursor Comment résoudre le problème de la fermeture d'Oracle Cursor Apr 11, 2025 pm 10:18 PM

La méthode pour résoudre le problème de fermeture du curseur Oracle comprend: la fermeture explicite du curseur à l'aide de l'instruction Close. Déclarez le curseur dans la clause de mise à jour pour la fermeture automatiquement après la fin de la portée. Déclarez le curseur dans la clause d'utilisation afin qu'il se ferme automatiquement lorsque la variable PL / SQL associée est fermée. Utilisez la gestion des exceptions pour vous assurer que le curseur est fermé dans toute situation d'exception. Utilisez le pool de connexion pour fermer automatiquement le curseur. Désactiver la soumission automatique et le délai de fermeture du curseur.

Comment supprimer toutes les données d'Oracle Comment supprimer toutes les données d'Oracle Apr 11, 2025 pm 08:36 PM

La suppression de toutes les données dans Oracle nécessite les étapes suivantes: 1. Établir une connexion; 2. Désactiver les contraintes de clés étrangères; 3. Supprimer les données de table; 4. Soumettre les transactions; 5. Activer les contraintes de clé étrangère (facultative). Assurez-vous de sauvegarder la base de données avant l'exécution pour éviter la perte de données.

Comment configurer les utilisateurs d'Oracle Comment configurer les utilisateurs d'Oracle Apr 11, 2025 pm 08:21 PM

Pour créer un utilisateur dans Oracle, suivez ces étapes: créez un nouvel utilisateur à l'aide de l'instruction Créer des utilisateurs. Accorder les autorisations nécessaires en utilisant la déclaration de subvention. Facultatif: utilisez l'instruction RESSOURCE pour définir le quota. Configurez d'autres options telles que les rôles par défaut et les espaces de table temporaires.

Comment vérifier les nombres non valides d'Oracle Comment vérifier les nombres non valides d'Oracle Apr 11, 2025 pm 08:27 PM

Les erreurs numériques non valides d'Oracle peuvent être causées par un décalage du type de données, un débordement numérique, des erreurs de conversion de données ou une corruption des données. Les étapes de dépannage incluent la vérification des types de données, la détection des débordements numériques, la vérification des conversions de données, la vérification de la corruption des données et l'exploration d'autres solutions possibles telles que la configuration du paramètre NLS_NUMERIC_CHARACTERS et activer la journalisation de vérification des données.

See all articles