0
votes

Comment rejoindre 2 tables avec des identifiants différents

Je suis entré dans un contexte étrange dans lequel xxx

pour chaque idb que nous avons un IDC. IDB et IDC sont différents, mais le nombre est identique, actuellement la seule relation est avec ID. Comment puis-je rejoindre / coller ces tables? Si j'essaie une jointure évidemment, il "dupliquer" les lignes provoquent une IDB et IDC différent

une jointure ressemblera à: xxx

Ce que je veux à accomplir est: xxx


2 commentaires

Vous souhaitez rejoindre le dernier chiffre des identifiants? (Cela suggère que vous devriez mieux stocker les pièces d'identité dans deux colonnes de chaque table, une pour la partie alpha et une pour le numérique.)


Le texte idb / idc resta-t-il constant? Vous pouvez remplacer l'idb avec une chaîne vide dans votre jointure, sera lente comme n'importe quoi. La suggestion ci-dessus est meilleure. Séparez ces colonnes.


3 Réponses :


0
votes

hmmm, vous semblez vouloir Union tout code> avec une arithmétique sur l'ID:

select a.id, a.field2, a.field3
from tableA a
union all
select a.max_id + b.id, b.field2, b.field3
from tableB cross join
     (select max(a2.id) as max_id from tableA a2) a


0 commentaires

1
votes

Il vous suffit de supprimer votre colonne d'identification qui n'est pas courante entre les deux tables pour éviter les doublons: xxx


0 commentaires

0
votes

Un collègue a suggéré ceci: xxx

Le résultat est xxx


0 commentaires