Maison Problème commun Quelle est l'utilisation de distinct dans Oracle ?

Quelle est l'utilisation de distinct dans Oracle ?

Jul 11, 2023 am 09:35 AM
oracle distinct

L'utilisation distincte d'Oracle peut filtrer les lignes en double dans l'ensemble de résultats pour garantir que la valeur de la ou des colonnes spécifiées renvoyées dans la clause "SELECT" est unique. La syntaxe est "SELECT DISTINCT colonne 1, colonne 2, colonne 3... à partir du nom de la table". "distinct" triera l'ensemble de résultats renvoyé et peut être utilisé conjointement avec "order by" pour améliorer l'efficacité.

Quelle est l'utilisation de distinct dans Oracle ?

L'environnement d'exploitation de cet article : système Windows 10, Oracle version 19c, ordinateur DELL G3.

Utilisation distincte d'Oracle

SELECT DISTINCT peut être utilisé pour filtrer les lignes en double dans l'ensemble de résultats afin de garantir que la valeur de la ou des colonnes spécifiées renvoyées dans la clause SELECT est unique.

Utilisez-le uniquement pour renvoyer le nombre d'enregistrements uniques, au lieu de l'utiliser pour renvoyer toutes les valeurs des enregistrements uniques. La raison en est que distinct ne peut être résolu que par une requête en double boucle, ce qui affectera sans aucun doute directement l'efficacité d'un site Web contenant une très grande quantité de données.

distinct triera l'ensemble de résultats renvoyé, il est donc préférable de l'utiliser conjointement avec order by pour améliorer l'efficacité.

Utilisation d'Oracle SELECT DISTINCT

La syntaxe de l'instruction SELECT DISTINCT est la suivante :

SELECT DISTINCT
    column_1
        FROM
    table_name;
Copier après la connexion

Dans la syntaxe ci-dessus, les valeurs de la colonne column_1 de la table table_name seront comparées pour filtrer les doublons.

Pour récupérer des données uniques basées sur plusieurs colonnes, spécifiez simplement une liste de colonnes dans la clause SELECT comme indiqué ci-dessous :

SELECT DISTINCT column_1,
    column_2,
        ...
        FROM
    table_name;
Copier après la connexion

Dans cette syntaxe, la combinaison des valeurs dans column_1, column_2 et column_n est utilisée pour déterminer l'unicité du sexe des données. La clause

DISTINCT ne peut être utilisée que dans l'instruction SELECT.

Veuillez noter qu'il n'y a aucune différence entre DISTINCT et UNIQUE dans Oracle. Ce sont des synonymes qui suivent la norme ANSI, et UNIQUE est une utilisation spécifique à Oracle. Du point de vue de la transplantation, l'utilisation de DISTINCT qui suit la norme ANSI est un meilleur choix. .

Exemples Oracle DISTINCT

Voici quelques exemples d'utilisation de SELECT DISTINCT pour voir comment cela fonctionne.

1. Un exemple simple d'Oracle DISTINCT

Ce qui suit est une table

字段1     字段2
 id       name
 1         a
 2         b
 3         c
 4         c
 5         b
Copier après la connexion

Si vous souhaitez utiliser une seule instruction pour interroger toutes les données avec des noms non en double, vous devez utiliser distinct pour supprimer les enregistrements en double inutiles. Alors entrez d'abord :

select *, count(distinct name) from table group by name
Copier après la connexion

Ensuite, nous entrons :

id name count(distinct name)
Copier après la connexion

et obtenons le résultat :

1 a 1
2 b 1
3 c 1
Copier après la connexion

2. Exemple d'application Oracle DISTINCT sur une colonne

L'exemple suivant récupère les noms de tous les contacts :

SELECT first_name
FROM contacts
ORDER BY first_name;
Copier après la connexion

Exécutez la requête ci-dessus déclaration, Les résultats suivants ont été obtenus :

Quelle est lutilisation de distinct dans Oracle ?

La requête a renvoyé 319 lignes, indiquant que la table des contacts comporte 319 lignes.

Pour obtenir le nom unique du contact, vous pouvez ajouter le mot-clé DISTINCT à l'instruction SELECT ci-dessus, comme indiqué ci-dessous :

Quelle est lutilisation de distinct dans Oracle ?

La requête a renvoyé 302 lignes, indiquant que la table des contacts comporte 17 lignes en double, elles ont été filtrées .

2. Exemple multi-colonnes d'application Oracle DISTINCT

Regardez la table order_items ci-dessous :

Quelle est lutilisation de distinct dans Oracle ?

L'instruction suivante sélectionne différents ID de produit et quantités dans la table order_items :

SELECT
    DISTINCT product_id,
    quantity
FROM
    ORDER_ITEMS
ORDER BY product_id;
Copier après la connexion
.

Exécutez l'instruction de requête ci-dessus, nous obtenons le résultat suivant

Quelle est lutilisation de distinct dans Oracle ?

Dans cet exemple, les valeurs des colonnes product_id et quantitative sont utilisées pour évaluer le caractère unique des lignes dans l'ensemble de résultats.

3. Oracle DISTINCT et NULL

DISTINCT traite les valeurs NULL comme des valeurs en double. Si vous utilisez l'instruction SELECT DISTINCT pour interroger les données d'une colonne avec plusieurs valeurs NULL, le jeu de résultats ne contient qu'une seule valeur NULL.

Veuillez vous référer à la table locations dans l'exemple de base de données, la structure est la suivante :

Quelle est lutilisation de distinct dans Oracle ?

L'instruction suivante récupère les données avec plusieurs valeurs NULL de la colonne d'état :

SELECT DISTINCT state
FROM locations
ORDER BY state NULLS FIRST;
Copier après la connexion

En exécutant l'exemple de code ci-dessus, vous obtenez les résultats suivants :

Quelle est lutilisation de distinct dans Oracle ?

Comme vous pouvez le voir sur l'image ci-dessus, seule une valeur NULL est renvoyée.

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.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

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 importer une base de données Oracle Comment importer une base de données Oracle Apr 11, 2025 pm 08:06 PM

Méthode d'importation de données: 1. Utilisez l'utilitaire SqlLoader: Préparez les fichiers de données, créez des fichiers de contrôle et exécutez SqlLoader; 2. Utilisez l'outil IMP / EXP: les données d'exportation, les données d'importation. Astuce: 1. Chargeur SQL * recommandé pour les ensembles de Big Data; 2. La table cible doit exister et la définition de la colonne correspond; 3. Après l'importation, l'intégrité des données doit être vérifiée.

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 créer une table dans Oracle Comment créer une table dans Oracle Apr 11, 2025 pm 08:00 PM

La création d'une table Oracle implique les étapes suivantes: Utilisez la syntaxe de la table Create pour spécifier les noms de table, les noms de colonne, les types de données, les contraintes et les valeurs par défaut. Le nom du tableau doit être concis et descriptif et ne doit pas dépasser 30 caractères. Le nom de la colonne doit être descriptif et le type de données spécifie le type de données stocké dans la colonne. La contrainte non nulle garantit que les valeurs nulles ne sont pas autorisées dans la colonne, et la clause par défaut spécifie les valeurs par défaut pour la colonne. Contraintes de clé primaire pour identifier l'enregistrement unique du tableau. La contrainte de clé étrangère spécifie que la colonne du tableau fait référence à la clé primaire dans un autre tableau. Voir la création des élèves de la table de l'échantillon, qui contient des clés primaires, des contraintes uniques et des valeurs par défaut.

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 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 obtenir du temps dans Oracle Comment obtenir du temps dans Oracle Apr 11, 2025 pm 08:09 PM

Il existe les méthodes suivantes pour obtenir du temps dans Oracle: current_timestamp: renvoie le temps du système actuel, précis en secondes. Systimestamp: plus précis que current_timestamp, aux nanosecondes. Sysdate: renvoie la date du système actuelle, à l'exclusion de la partie d'heure. To_char (sysdate, 'yyy-mm-dd hh24: mi: ss'): convertit la date et l'heure du système actuels en format spécifique. Extrait: extrait une partie spécifique d'une valeur temporelle, comme un an, un mois ou une heure.

Comment lire le rapport Oracle AWR Comment lire le rapport Oracle AWR Apr 11, 2025 pm 09:45 PM

Un rapport AWR est un rapport qui affiche les performances de la base de données et les instantanés d'activité. Les étapes d'interprétation comprennent: l'identification de la date et de l'heure de l'instantané d'activité. Consultez un aperçu des activités et de la consommation de ressources. Analyser les activités de session pour trouver des types de session, la consommation de ressources et les événements d'attente. Trouvez des goulots d'étranglement potentiels de performance tels que des instructions SQL lentes, des problèmes de ressources et des problèmes d'E / S. Affichez les événements d'attente, identifiez-les et résolvez-les pour les performances. Analyser les modèles d'utilisation des verrous et de la mémoire pour identifier les problèmes de mémoire qui causent des problèmes de performances.