Maison  >  Article  >  base de données  >  Comment interroger plusieurs tables avec la même structure dans la base de données Oracle

Comment interroger plusieurs tables avec la même structure dans la base de données Oracle

下次还敢
下次还敢original
2024-04-18 20:45:29418parcourir

Pour interroger plusieurs tables avec la même structure, vous pouvez utiliser l'opérateur UNION pour connecter les instructions SELECT de chaque table afin de garantir que le nombre et le type de colonnes correspondent. Les étapes spécifiques incluent : 1. Déterminez les colonnes à interroger ; 2. Écrivez une requête UNION ; 3. Exécutez la requête ; 4. Facultatif : utilisez DISTINCT pour éliminer les doublons.

Comment interroger plusieurs tables avec la même structure dans la base de données Oracle

Interrogation de plusieurs tables avec la même structure dans la base de données Oracle

Pour interroger plusieurs tables avec la même structure, vous pouvez utiliser l'opérateur UNION. L'opérateur UNION combine les lignes de différentes tables en un seul jeu de résultats.

Syntaxe :

<code class="sql">SELECT column_list
FROM table1
UNION
SELECT column_list
FROM table2
UNION
...
SELECT column_list
FROM tableN;</code>

Étapes :

  1. Déterminez les colonnes à interroger : Déterminez les colonnes à extraire de chaque table. Les colonnes doivent être du même type de données et du même ordre.
  2. Écriture de la requête : Utilisez l'opérateur UNION pour joindre l'instruction SELECT pour chaque table. Assurez-vous que le nombre de colonnes après UNION correspond au nombre de colonnes renvoyées dans chaque instruction SELECT.
  3. Exécuter la requête : Exécutez une requête pour obtenir les résultats fusionnés de toutes les tables. L'ensemble de résultats contiendra des enregistrements en double, mais vous pouvez utiliser le mot-clé DISTINCT pour éliminer les doublons.

Exemple :

Supposons que vous ayez trois tables avec la même structure : employeescustomersorders. Pour interroger tous les enregistrements de ces trois tables, vous pouvez utiliser la requête suivante :

<code class="sql">SELECT *
FROM employees
UNION
SELECT *
FROM customers
UNION
SELECT *
FROM orders;</code>

Cette requête renverra tous les enregistrements des trois tables, y compris les enregistrements en double. Pour éliminer les doublons vous pouvez utiliser la requête suivante :

<code class="sql">SELECT DISTINCT *
FROM employees
UNION
SELECT DISTINCT *
FROM customers
UNION
SELECT DISTINCT *
FROM orders;</code>

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:
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