簡體   English   中英

如何加入 joomla 表

[英]How to join joomla tables

我有基本的 SQL 知識,並且正在嘗試應用有限的 scope 我必須弄清楚以下幾點:

有一個名為 users 的表,它有一個 id(鍵)、一個名稱和一個 email (以及我不太關心的其他事情)。 每個用戶都有一個條目。

還有一個名為 usergroups 的表,由 ID(鍵)和標題組成。 只有兩個組“成員”和“關聯”

還有一個名為 user_group_map 的第三個表,它有一個 ID 和一個 groupid。 ID 映射到 users 表中的 id。 groupid 映射到 usergroups 表中的 ID 字段。

我正在嘗試構建一個 select 語句,它將獲取給定組中的所有用戶。

我已經結結巴巴地想弄清楚如何讓它發揮作用。 我可以使用 phpMyAdmin 來測試 SQL,但是對於如何使連接正確地過濾用戶組並通過 user_grou_map 將其向后應用到用戶還不太清楚。

非常感謝 SQL 和/或 joomla 中的指導(最好是兩者,這樣我可以豐富我的知識並普遍做到這一點)。

提前致謝。

約瑟夫

選項 1 - 使用子查詢

SELECT id, name, email FROM #__users WHERE id IN (
   SELECT user_id FROM #__user_usergroup_map WHERE group_id = 8
);

這將首先運行內部查詢以檢索 ID 為 8 的組中的所有用戶 ID。然后在外部查詢中使用這些結果。

選項 2 - 使用連接

SELECT User.id, User.name, User.email FROM #__users as User 
LEFT JOIN #__user_usergroup_map as UserGroup on UserGroup.user_id = User.id
WHERE UserGroup.group_id = 8

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM