2014-05-06 3 views
0

Je suis aux prises avec celui-ci. Ce dont j'ai besoin est de sélectionner une ligne ET d'autres lignes de la même table qui sont liées. Voici un exemple de la table:Obtenez les lignes liées dans la même table?

table 
key | value | related 
================================= 
1  | omg  | 0 
2  | lol  | 0 
3  | rofl  | 2 
4  | barfoo | 0 
5  | foo  | 0 
6  | bar  | 0 
... 
20000 | haha  | 2 

(où la relation « 2 » est la clé de ligne pour « lol »)

Ainsi, dans le cas que je ne (pas simultanément) soit ceci:

SELECT * FROM table Where value='lol' 

ou cette

SELECT * FROM table Where value='rofl' 

ou ce

SELECT * FROM table Where value='haha' 

il devrait retourner:

key | value | related 
================================= 
2  | lol  | 0 
3  | rofl  | 2 
20000 | haha  | 2 

Les gars idées?

Merci beaucoup!

Répondre

0

essayez ceci:

Select * From table t 
Where Exists 
    (Select * From Table 
    where value = @theValue 
     and valueKey in (t.ValueKey, t.related))   
Questions connexes