아래 쿼리가 있는데 올바른 데이터를 가져 오지만 사진 테이블의 첫 번째 행만 포함되도록 조인 결과를 제한해야합니다. 다음은 내가 가지고있는 것입니다 :두 번째 테이블에서 조인 결과 제한
SELECT `listings`.*, `photos`.*
FROM `listings` JOIN `photos`
ON `photos`.`listing_id` = `listings`.`id`
WHERE `listings`.`date_expires` >= '2016-08-10' AND `listings`.`visible` = '1' AND `listings`.`spotlightListing` >= '2016-08-10'
어떻게 사진 테이블에서 첫 번째 행을 얻을 수 있습니까? 감사!
먼저 "첫 번째 행"이 의미하는 것을 정의해야합니다. 그러면 [these] (http://stackoverflow.com/search?q=%5Bmysql%5Deach+group)가 관련성이 있습니다. – Uueerdo
"첫 번째 행"은 테이블이 조인 될 때 최종 결과가 일치하는 "리스팅"결과가 모두 반환되어야하며 각각의 결과가 "사진"테이블의 첫 번째 결과를 가져야한다는 것을 의미합니다. 즉, 각 목록에 10 장의 사진이 있고 5 개의 목록이 WHERE에 일치하면 반환 된 행 5 개 (각 사진에는 사진 1 장으로 만 표시됨)로 끝나야합니다. – falc2
끝나는 행에 고유 한 순서는 없습니다. 목록과 일치하는 사진에서 (사실상) 무작위 추출을 원하거나 목록에 입력 된 첫 번째 사진이 첫 번째 합류가 될 것이라고 기대하고 있습니까? – Uueerdo