저는 현재하고 싶은 MySQL 쿼리를 고민하고 있습니다. 내가 잠을 자지 않은 것에 따라 나는 명확히 생각하지 않고있을 수있다. 그러나 나는 이것을 잠시 동안 조금 붙 들었다.여러 테이블에 걸쳐 조인 된 쿼리를 작성하는 데 어려움이 있습니다.
내 사이트 사용자가 액세스 할 수있는 모든 첨부 파일을 반환하는 쿼리를 작성하려고합니다. 모든 첨부 파일에는 owner_id
이 연관되어 있으며 테이블을 통해 attachments
테이블에 연결된 그룹이 있습니다.
그래서 내 테이블은 다음과 같습니다
+--------------------+
| attachments |
| groups |
| groups_attachments |
| users |
| users_attachments |
| users_groups |
+--------------------+
첨부 파일, 그룹 및 사용자 모두 자신의 ID를 가지고 있고 연결 테이블이 연결되는 각 테이블의 ID를 보유하고 있습니다.
내가 어느 attachment.owner_id
가 users.user_id
일치하면 첨부 한 모든 필드를 선택하고자하거나 users.user_id
는 users_attachments
인 경우 (경우 소유자 권한을 부여 구체적) 또는 users.user_id
를 통해 첨부 관련된 그룹에 대한 users_groups
에 있으면 users_attachments
.
너는 천재 야! 나는 그것이 작동하도록 세 번째 부분을 약간 변경해야했습니다. "from users u"대신 "FRY users_groups ug"가 필요하고 JOIN을 적용하고 적용 할 수있는 곳은 어디입니까? – samael