我目前正試圖讓我的頭繞着我想要做的MySQL查詢。很可能是因爲我沒有睡覺,所以我沒有清楚地思考,但是我有一段時間以來一直困擾着我。在跨多個表建立連接查詢時遇到困難
我想建立一個查詢來返回我的網站上的用戶有權訪問的所有附件。每個附件都有一個與其關聯的owner_id
,並且還有一些組通過groups_attachments
錶鏈接到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
。
你先生是個天才!我只需要對第三部分進行小改動就可以運行。 而不是「從用戶u」我需要「FROM users_groups ug」,並修正JOIN和WHERE適用 – samael