2017-05-14 14 views
3

少し助けが必要です。 私は3つのテーブルを持っており、そこに名前がホール、hall_quantified_detailsとhall_hall_quantified_detailsあり、それらは次のようになります。where節付きのMysqlサブクエリ

hall_id | hall_name 
    1  Hall 1 
    2  Hall 2 

hall_quantified_details

hall_quantified_details_id | name_quantified 
      1      space 
      2      seats 

hall_hall_quantified_details

hall_hall_quantified_details_id | hall_id | hall_quantified_details_id | value 
      1       1    1      100m2 
      2       1    2      500seats 

そして

ホール私はバを取得したいだから私はからhall_id 1のために戻って取得したい

SELECT p.name_quantified 
FROM hall_quantified_details p 
WHERE p.hall_quantified_details_id IN (
     SELECT pns.hall_quantified_details_id 
     FROM hall_hall_quantified_details pns 
     WHERE pns.hall_id = 1 
); 

:hall_id 1の値と値のクエリ名を持つckが、私は、クエリを持っていますが、それが戻っhall_quantified_details_idの名前だけを私を与える...クエリは次のようになりますhall_hall_quantified_details結果は次のようになります。 500シートを座る。

+0

あなたはサブクエリを望んでいない、あなたは、テーブル間の 'JOIN'をしたいです。 –

答えて

0

それは簡単ですが、参加:

select h2.name_quantified, 
    h1.value 
from hall_hall_quantified_details h1 
join hall_quantified_details h2 on h1.hall_quantified_details_id = h2.hall_quantified_details_id 
where h1.hall_id = 1; 
+0

ありがとう、私は本当にこれについて混乱している、あなたに感謝@ Gurwinder Singh –

+0

@MilicaPavlovic - ようこそ – GurV