Fusionner des tables avec un nombre de colonnes inégal
La combinaison de données provenant de tables avec différents nombres de colonnes nécessite une stratégie pour éviter la perte de données. Cet exemple montre comment fusionner le tableau A (plus de colonnes) et le tableau B (moins de colonnes) tout en conservant toutes les données.
La solution consiste à utiliser des valeurs NULL
comme espaces réservés pour les colonnes manquantes dans le petit tableau. Cela maintient un nombre de colonnes cohérent dans le résultat combiné.
Voici la requête SQL :
<code class="language-sql">SELECT Col1, Col2, Col3, Col4, Col5 FROM TableA UNION ALL SELECT Col1, Col2, Col3, NULL, NULL FROM TableB</code>
Cette requête unit les données des deux tables. NULL
est explicitement attribué à Col4
et Col5
dans la sélection TableB
, correspondant à la structure des colonnes de TableA
. Cela préserve toutes les colonnes des deux tables, en comblant les lacunes avec NULL
si nécessaire. Utiliser UNION ALL
au lieu de UNION
conservera les lignes en double si elles existent dans les deux tableaux.
Cette méthode permet une fusion efficace de tableaux avec des structures de colonnes différentes, facilitant ainsi une analyse et une manipulation transparentes des données sur plusieurs sources de données.
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!