발행합니다.가입 표는 내가 가입을 찾고 있어요 3 개 테이블이
pictures
--------
id user_id link
users
-----
id name
votes
-----
id user_id picture_id
내가 로그인 한 특정 사용자에 대한 모든 사진에 대한 총 투표 수를 찾을 수있다 싶지 원을 꽤 많이 나는 모든 사진을 반복하고 사용자가 사진에 투표를하면 다시 투표 할 수 없습니다. 나는 모든 사진하지만 모든 투표가 첫 번째 레코드에 최대 추가되고 있습니다 얻을
SELECT
p.*, u.username, d.total_votes
FROM pictures p
LEFT JOIN users u
ON p.user_id = u.id
LEFT JOIN
(
select id, picture_id, count(id) as has_voted from votes
) d on d.picture_id = p.id
:
Desired output:
---------------
id user_id link user_name total_votes
1 5 [link] Sean 5
은 지금까지 나는 이런 식으로 뭔가가있다.
편집
너무 불분명 것에 대한
죄송합니다 그래서이 내 데이터베이스의 모든 이미지입니다. Sean (user_id 1)으로 로그인했다고 가정 해 보겠습니다. 각 이미지에 투표 한 횟수를 표시하고 싶습니다.
user_id는 누가 이미지를 업로드 했습니까?
당신이 원하는 출력에 따라 smple 기록을 줄 수 있습니까? –
이 사람이 투표 한 사진을 모두 선택 하시겠습니까? –
업데이트 됨. 일을 명확히하는 데 도움이되는 이미지가 추가되었습니다. – SeanWM