2011-02-10 3 views
1

1 대 다 관계로 연결된 2 개의 테이블이 있습니다. papers라고 불리는 첫 번째 테이블에는 id와 paperid에 대한 참조로 paperid를 갖는 다른 명명 된 그림이 있습니다.두 테이블에서 그룹 당 4 개의 행 선택

내가하려는 것은 각 종이와 관련된 모든 그림을 선택하는 것입니다. 내가 조인을 만들면 할 수있는 일은, 문제는 종이의 선택을 제한하는 방법을 알 수 없지만 여전히 각 종이의 모든 그림을 한도 내에서 가져오고 싶다는 것입니다. 10 개 사진
논문 4 :

제한 = 4

논문 1 : 3 개 사진
논문 2 : 3 16 개 사진
논문이 개 사진

당신이 도움이 될 수 있습니다 이해 희망, 그것은해야 상당히 간단하지만 올바른 솔루션을 얻을 수는 없습니다.

+0

시도한 쿼리를 게시 할 수 있습니까? – Dogbert

+0

[mysql : GROUP BY 내에서 LIMIT을 사용하여 그룹당 N 개의 결과를 얻을 수 있습니까?] (http://stackoverflow.com/questions/2129693/mysql-using-limit-within-group-by-to-get-n) -results-per-group) –

+0

SELECT'papers'.idid는 paper_id,'pictures'는'id'를 picture_id,'pictures'는'picture','pictures'는'pictures'를'pictures'로'이미지'를 나타냅니다. FROM '논문')'사진'에'사진'을 붙인다'서류'는'논문'은'어디'논문'사진'은 ='주문'은'서류'는'제한 LIMIT 4 –

답변

0

이것은 "그룹당 N"문제이며 매우 간단합니다. 이 아니며입니다. 원하는 것은 대부분의 쿼리와 같이 설정된 교차가 아니므로 결과를 강제로 적용하기 위해 몇 가지 복잡한 작업을 수행해야합니다. 귀하의 질문에 이러한 중복을 체크 아웃 :

MySQL Query - recent entries per group

Using LIMIT within GROUP BY to get N results per group?

http://www.artfulsoftware.com/infotree/queries.php#104

항상 4 개 사진을 일치 종이 당 하나 개의 쿼리를 발행의 다른 옵션이있다.

+0

그 결과에는 논문 결과가 포함되지 않고 단지 조사 된 논문 수를 제한하기위한 것입니다. 우리는 여전히 같은 문제가 있습니까? –

관련 문제