Inner Join dans Oracle - Découvrez les 6 meilleurs exemples de requêtes de jointure interne dans Oracle

Table des matières:

Anonim

Introduction à Inner Join dans Oracle

Les clauses de jointures sont utilisées dans la base de données Oracle pour accéder aux données de plusieurs tables afin d'obtenir des informations. Il existe différents types de jointures dans la base de données Oracle.

La jointure interne est l'un des types de jointure dans la base de données Oracle. Une jointure interne, joignez les tables multiples et renvoyez les lignes pour lesquelles la condition de jointure est ou est vraie. Une jointure interne est également appelée jointure simple. La jointure interne est la jointure la plus courante parmi les types de jointure.

La syntaxe de la jointure interne

SELECT column (, column ) FROM t1
INNER JOIN t2
ON t1.column = t2.column;

La représentation visuelle de la jointure interne est représentée dans le diagramme ci-dessous, car dans le diagramme ci-dessous, la zone ombrée renvoie le résultat de la jointure interne Oracle.

Par conséquent, la jointure interne Oracle renvoie les enregistrements d'intersection de t1 et t2.

Exemples de requêtes pour la jointure interne

Comprenons en détail la jointure interne à l'aide de quelques exemples de requête:

Exemple 1

Exemple de requête pour jointure interne

SELECT employee.employee _id, employee.employee_name, department. department_name
FROM employee
INNER JOIN department
ON employee.employee _id = department.employee _id;

Cet exemple ci-dessus Oracle INNER JOIN renverra toutes les lignes de la table employee et de la table department où la valeur employee _id dans la table employee et la table department sont mises en correspondance.

Nous considérons ici le schéma hr qui est l'exemple de schémas de base de données Oracle. Le schéma hr contient les tables COUNTRIES, EMPLOYEES, DEPARTMENTS, JOB_HISTORY, JOBS, LOCATIONS, REGIONS, qui nous intéressent ou nécessitent des tables EMPLOYEES, DEPARTMENTS and LOCATIONS.

La description de ces tableaux est -

SALARIÉS

DÉPARTEMENTS de table

EMPLACEMENTS des tables

Exemple # 2

Exemple de jointure interne pour deux tables

Ici, nous aimerions récupérer les données de deux tableaux EMPLOYÉS ET DÉPARTEMENTS. Ici, la requête que nous écrivons pour récupérer l'ID et le prénom de l'employé de la table de l'employé et le nom du département de la table du département -

SELECT employees. employee_id, employees. first_name, departments.department_name
FROM employees, departments
WHERE employees. employee_id = departments. department_id;

Production

Les noms de colonne avec la table sont précédés de la clause Oracle SELECT. Si une colonne est commune aux deux tables, pour plus de clarté, le nom de la colonne doit être précédé du nom de la table. Les tables d'où les données doivent être récupérées sont spécifiées dans la clause from avec des virgules séparées. Dans la clause WHERE, spécifiez la condition de jointure. La relation entre les employés et les tables de service est déterminée par les valeurs de la colonne commune employee_id des deux tables qui doivent être égales et cette relation est appelée une jointure Equi. La clé primaire et les clés étrangères sont généralement impliquées dans cette relation.

Exemple # 3

Exemple de jointure interne de deux tables avec des alias

Réécrivons l'exemple ci-dessus en utilisant les alias de table comme -

SELECT e. employee_id, e. first_name,
d. department_name
FROM employees e, departments d
WHERE e. employee_id = d. department_id;

Production

Comme dans la requête ci-dessus, les alias de table sont créés dans la clause from après le nom de la colonne et au lieu d'écrire un nom de table complet dans la clause select avant chaque colonne, utilisez les alias de table comme e et d dans la requête ci-dessus.

Exemple # 4

Exemple de jointure interne pour deux tables avec ajout de clauses supplémentaires

Exemple de requête suivante où nous ajoutons des clauses supplémentaires à notre instruction Oracle SELECT dans la clause where pour ajouter des agrégations, restreindre les lignes retournées, définir l'ordre de tri, etc. Voici un exemple de requête qui récupère tous les employés qui travaillent dans les départements Finance, Manufacturing et Construction.

SELECT e. employee_id, e. first_name,
d. department_name
FROM employees e, departments d
WHERE e. employee_id = d. department_id
AND d. department_name in ( 'Finance', 'Manufacturing', 'Construction' );

Production

Exemple # 5

Exemple de jointure interne de deux tables avec une clause order by

Exemple de requête suivant, nous réécrivons la requête ci-dessus en ajoutant la clause order by, affichant ainsi les données de l'employé triées par nom de département.

SELECT e. employee_id, e. first_name,
d. department_name
FROM employees e, departments d
WHERE e. employee_id = d. department_id
AND d. department_name in ('Finance', 'Manufacturing', 'Construction')
ORDER BY d. department_name;

Production

Exemple # 6

Exemple de jointure interne pour la jointure de plusieurs tables

Parfois, pour obtenir les informations, nous pouvons avoir besoin de joindre plus de deux tables. Ensuite, nous écrivons l'exemple de requête pour joindre plusieurs tables. Prenons l'exemple que nous voulons récupérer le prénom de l'employé de la table des employés, le nom du département de la table des services et l'ID du pays de l'emplacement où cet employé travaille dans la table des emplacements.

SELECT e. first_name, e. salary, d. department_name, l. city, l. country_id
FROM employees e, departments d, locations l
WHERE e. employee_id = d. department_id
AND
d. location_id = l. location_id;

Production

Pour joindre quatre tables ou plus, le même concept s'applique en ajoutant le nom de la table dans la clause FROM d'un oracle et en appliquant la condition de jointure à la clause WHERE d'un oracle.

Conclusion

La jointure interne est l'un des types de jointure dans la base de données Oracle. Une jointure interne utilisée pour joindre les tables multiples et renvoyer les lignes pour lesquelles la condition de jointure est ou est vraie. Généralement, la clé primaire et la clé étrangère sont impliquées dans la jointure interne pour créer une relation entre les tables.

Articles recommandés

Ceci est un guide pour Inner Join dans Oracle. Ici, nous discutons de l'introduction de la jointure intérieure avec quelques exemples en détail. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus–

  1. Se joint à MySQL
  2. Requêtes Oracle
  3. Oracle Data Warehousing
  4. Qu'est-ce que la base de données Oracle