2016-10-23 8 views
1

私は以下の問題を抱えていることに感謝します。 私は以下の2つの表(TBLAとTBLB)持っている:私は何を達成したいことはあるms SQLにアクセスします。

tblA 
+----+------+ 
| ID | item | 
+----+------+ 
| 1 | c | 
| 2 | a | 
| 3 | b | 
| 4 | e | 
| 5 | d | 
| 6 | f | 
| 7 | a | 
| 8 | c | 
+----+------+ 

tblB 
+----+----+ 
| f1 | f2 | 
+----+----+ 
| a | | 
| b | a | 
| c | a | 
| d | | 
| e | | 
| f | d | 
| g | d | 
| h | d | 
| I | | 
+----+----+ 

を:TBLAから項目フィールドの値がF2で表示される場所時間ながらIDは、TBLAから2と7の値という

+----+------+ 
| ID | item | 
+----+------+ 
| 2 | b | 
| 2 | c | 
| 5 | f | 
| 5 | g | 
| 5 | h | 
| 7 | b | 
| 7 | c | 
+----+------+ 

注:私たちは次のような結果を得るように私は、一緒にTBLAからID値で、すべてのTBLB f1の値を選択したいTBLBのフィールド結果に同じ項目値( 'a')が表示されていることを確認してください。これは必須です。私は、次のアイデアを約プレーしてきた

SELECT f1 FROM tblB 
WHERE f2 IN(SELECT item FROM tblA) 

//

SELECT ID,f1 FROM tblA,tblB 
WHERE f2 IN(SELECT item FROM tblA) 

//

SELECT x.ID, y.f1 
FROM tblA AS x, tblB AS y 
WHERE y.f2 IN(SELECT item FROM tblA) 

しかし、私はそこに着くのに苦労しています。

答えて

2

私はこれがちょうどjoinだと思う:

select a.id, b.f1 
from tblA as a inner join 
    tblB as b 
    on b.f2 = a.item 
order by a.id; 
+0

多くのおかげでスピーディーな対応のために!完璧に動作します。ジョインとエイリアスについてもう少し読んでみる必要があります。 – Jim

関連する問題