Combiner les deux tables SQLite
J'ai deux tables, ta et tb:
ta:
key col1
--------
k1 a
k2 c
la tuberculose:
key col2
-------
k2 cc
k3 ee
Ils reliés par "clé". Je veux savoir comment puis-je obtenir une table, tc, comme:
key col1 col2
-------------
k1 a
k2 c cc
k3 ee
Est-il une méthode simple au lieu d'insérer chaque enregistrement? Ils sont un million d'enregistrements de tables j'ai donc besoin d'une manière efficace.
OriginalL'auteur trudger | 2010-01-04
Vous devez vous connecter pour publier un commentaire.
Faire un VUE des deux tables. Écrire un
SELECT ... JOIN
déclaration que vous donne le résultat que vous voulez, et utilisez-les comme base pour un point de VUE.Exemple:
Jeff, vous avez raison. Je n'ai pas lu les exemples soigneusement. La méthode est la même.
Oui je suis d'accord.
Même si l'utilisation d'un FULL JOIN, le "k3" n'apparaît toujours pas dans la colonne "clé" de la troisième table. J'ai compris que je peux utiliser un "CAS LORSQUE" réglage de la colonne. Par exemple: SELECT case QUAND ta.la clé EST vide ALORS la tuberculose.La clé de ta d'AUTRE.Touche FIN Touche, ta.col1, la tuberculose.col2 from ...(joindre résultat) Alors, je peux insérer le résultat de la troisième table. Cela fonctionne, mais je ne suis pas sûr de savoir si c'est une méthode efficace.
Essayez: SELECT IFNULL(ta.clé, de la tuberculose.la clé) ...
OriginalL'auteur Emil Vikström
À l'aide d'un point de VUE est la bonne voie à suivre si vous êtes à la recherche pour les données afin de refléter les changements dans les tables d'origine.
Si vous ne voulez vraiment les données à copier dans une nouvelle table, vous aurez besoin de faire quelque chose comme:
Qui va peupler la nouvelle table avec les données de l'ancien tables, mais elles seront en mesure de varier de manière indépendante.
OriginalL'auteur Joe Gauterin
Pour ce que vous cherchez, vous aurez besoin de faire une JOINTURE EXTERNE COMPLÈTE pour vous assurer que vous ne manquez pas toutes les clés. Une fois que vous avez la requête de travail, vous pouvez penser à l'utiliser ou la création d'une vue.
Vous pouvez avoir besoin de contourner les limitations de la DB si JOINTURE EXTERNE COMPLÈTE n'est pas mis en œuvre, vous pouvez normalement juste de l'UNION à gauche et à droite de la jointure externe pour créer votre plein.
OriginalL'auteur Jeff Beck