2016-11-30 1 views
0

I가 다음과 같은 테이블에 동일한 ID의 (3 표)와 행을 선택MySQL은

| blog_id | media_id | 
======================== 
| 1  |  1  |   
| 2  |  2  | 
| 3  |  3  |  
| 3  |  4  |   

모든 blog_media.uri을 선택하고 싶습니다. blog_media.media_idblog_media_content.blog_id입니다.

제 목적을 달성하도록 도와주십시오.

+0

'INNER JOIN'을 세 개의 테이블 중 당신이 원하는 정보를 줄 것입니다 : 모든 blog_id들에 대한 기록을 얻기 위하여. – 1000111

+0

SELECT uri FROM blog_media WHERE media_id IN (SELECT media_id FROM blog_media_content WHERE blog_id = 3) 어떤 아이디어가 있습니까? –

답변

0

blog_mediablog_media_content 표 사이의 inner join이면 충분합니다.

SELECT 
bm.uri 
FROM blog_media bm 
INNER JOIN blog_media_content bmc ON bm.media_id = bmc.media_id 
WHERE bmc.blog_id =3; 

참고 :

당신이 blog 테이블에서 추가 정보가 필요하면 당신은 추가 inner join 아래와 같이해야합니다 :

...INNER JOIN blog_table b ON bmc.blog_id = b.blog_id...

편집 :

SELECT 
bm.uri 
FROM blog_media bm 
INNER JOIN blog_media_content bmc ON bm.media_id = bmc.media_id 
ORDER BY bmc.blog_id; 
+0

내가 그 작업을 수행 할 수 있습니다? blog_media의 BM FROM bm.uri SELECT INNER 가입 blog_media_content BMC ON bm.media_id = bmc.media_id WHERE bmc.blog_id = bm.media_id; ? –

+0

Syntyax 현명한 이것이 맞습니다. 그런 쿼리의 사용법은 무엇입니까? 나는 당신이 blog_id와 media_id가 같은 사람들 만의 기록을 원한다는 것을 의미합니까? – 1000111

+0

하나의 게시물에 여러 개의 이미지가있을 수 있으므로 –