2008-12-04 10 views
2

J'essaie de sélectionner un enregistrement hors de la table1 en joignant table2 et en utilisant des colonnes table2 dans l'instruction WHERE. Col1 et Col2 dans table1 peuvent être stockés dans col1 de table2. Je dois rejoindre col1 de table2 avec soit la valeur de col1 ou col2 dans le tableau 1Simple T-SQL Rejoindre la question

est l'instruction SQL ici, je CREEE (pseudo):

SELECT 
    t1.Col1, 
    t1.Col2, 
    t1.Col3, 
    t1.Col4 
FROM 
    table1 t1 
JOIN table2 t2 on t2.Col1 = t1.Col1 or t2.Col1 = t1.Col2 

Quelle serait la meilleure façon d'aborder ce sujet?

Répondre

5

Cela devrait aller. Une autre façon d'écrire la même condition est la suivante:

... JOIN table2 t2 on t2.Col1 IN (t1.Col1, t1.Col2) 

Il ne devrait pas question de quelle manière vous le faites dans ce cas. Faites ce que vous trouvez plus lisible.

+0

Je l'ai modifié ressembler à ce format. –

0

Si je comprends bien votre requête, votre requête SQL est parfaitement satisfaisante.