'events'테이블과 'photos'테이블이 있습니다. 각 이벤트에는 '사진'테이블에 해당하는 0 개 또는 여러 개의 레코드가있을 수 있습니다. 다음 sql은 각 이벤트에 대해 별도의 결과를 제공합니다.많은 레코드를 두 번째 mysql 테이블의 각 결과로 집계합니다.
각 이벤트가 고유 한 이벤트이고 사진이 PHP의 $ event [ 'photos']와 같은 항목에서 액세스 할 수 있도록 사진을 이벤트의 단일 필드에 집계하려면 어떻게해야합니까?
SELECT e.title, e.eid, p.pid
FROM events e
RIGHT JOIN photos p ON p.aeid = e.eid
WHERE e.dateTimeStart >= $start_date_time AND e.dateTimeStart <= $end_date_time
나는 당신이 당신의 결과 세트에서 반복 할 필요가 있다고 생각한다. 그러나 당신은 그것을 조정할 수있다. 그러나 그것은 PHP에서 출력 결과를 처리함으로써 이루어져야한다. – Snivs
버머, 내가 프로덕션에서 가지고있는 것이지만 많은 이벤트 레코드로 인해 느려지고있다. 편집 : 글쎄, 나는 각 이벤트에 대해 별도의 사진 쿼리를하고있다. 이 출력을 처리하는 것이 속도가 빠르다는 것을 알게 될 것입니다. (비록 모두 SQL을 사용하고 싶습니다) – celwell
성능을 향상시키고 싶다면 (aeid DESC, PID ASC와 같은) 사진에 인덱스를 추가해보십시오. 이렇게하면 사진에 대한 검색 속도가 빨라집니다. – Snivs