2011-07-27 5 views
0

Je ne savais pas comment l'expliquer en si peu de mots pour l'adapter au titre. Cependant ce n'est pas vraiment compliqué. J'ai 2 tables, les premiers appelés « lignes » ces 2 colonnes:MySQL récupère 2 valeurs de différentes tables

Text PID 

et le second appelés Poèmes ces 2:

PID Title 

je dois sélectionner des lignes de la première table quand ils sont égal à $ quelque chose et ensuite chercher sur la table Poèmes pour la ligne correspondante (celui qui a le même PID) et afficher à la fois le texte de la première table et le titre de la seconde.

Comment cela peut-il être fait? Merci

Répondre

2
SELECT Lines.*, Poems.* FROM Lines 
INNER JOIN Poems ON(Poems.PID = Lines.PID) 
WHERE Lines.Text = 'SOME VALUE' 
2
SELECT l.Text, p.Title 
    FROM lines l 
     INNER JOIN poems p 
      ON l.PID = p.PID 
    WHERE l.text = 'something' 
1

Vous cherchez une jointure interne requête SQL:

SELECT column_name(s) FROM table_name1 INNER JOIN 
table_name2 ON table_name1.column_name=table_name2.column_name 
WHERE table_namex.column_n = "xyz"; 

Ce qui implique que vous cas vous utiliserez:

SELECT Lines.*, Poems.* 
    FROM Lines l INNER JOIN Poems p 
      ON l.PID = p.PID 
    WHERE l.text = "xyz" 
Questions connexes