다음 쿼리는 그냥 매김 사용에 대한 전체 결과를 계산 할쿼리를 유지하면서 count를 사용하여 총 행을 얻을 수 있습니까?
SELECT video.* from video
LEFT JOIN conv_progress on video.vid_id=conv_progress.vid_id
LEFT JOIN upload_progress on video.vid_id=upload_progress.vid_id
where conv_progress.vid_id is null
AND upload_progress.vid_id is null
ORDER BY video.timestamp DESC LIMIT ?, ?
비디오라는 테이블에서 모든 결과를 가져옵니다. rowCount()를 사용하면 현재 limit ?,?
이 내 수를 줄입니다.
SELECT video.*, COUNT(vid_id) as count from video
LEFT JOIN conv_progress on video.vid_id=conv_progress.vid_id
LEFT JOIN upload_progress on video.vid_id=upload_progress.vid_id
where conv_progress.vid_id is null
AND upload_progress.vid_id is null
ORDER BY video.timestamp DESC LIMIT ?, ?',$variables
이 쿼리는 하나의 결과 만 있지만 적절한 카운트 수만 반환합니다. 누구든지이 문제를 어떻게 해결할 수 있는지 알고 있습니까?
입력 해 주셔서 감사합니다. 문제는 페이지 매김의 한계가 필요하다는 것입니다. 내 전체 쿼리를 그대로 사용하면 솔루션에서 아무 것도 반환하지 않습니다. – Scarface
항상 하나의 정수를 반환해야합니다. 비디오에서 열을 가져 오려면 한 번, 비디오에서 열을 가져 오려면 한 번, 다른 수를 얻으려면 데이터베이스를 두 번 쿼리해야합니다. – MPelletier