2014-04-21 21 views
0

我有一個網站與成員組。組織分爲國家組,地區組,分區域組和城市組。我需要確定具有父母 - 子女關係的羣組列表的最後一個孩子。

城市羣是次區域組的孩子, 次區域集團是區羣 區域組的孩子是國家組 coutnry組的孩子沒什麼(父= 0)的孩子。

這些團體有一個字段類別(管道工,傢俱,機械,等...)

比方說,成員大衛加入羣「管道工」。他還要選擇他的城市(例如:他選擇洛杉磯)。

我們的腳本添加了他,這4組:

管道工洛杉磯市中心 管道工洛杉磯 管道工加州 管道工美國

您可以找到表用戶和連接的圖像表組。

enter image description here

enter image description here

我的問題: 我需要一個SQL命令來計算用戶的數量,城市小組

我需要快速確定城市羣的id其中成員已加入。 例如:大衛加入洛杉磯水暖工團體,什麼是SQL命令來識別團體的最後一個孩子。

我希望我已經夠清楚了。我希望有SQL天才會熱情地向我找解決辦法,因爲我的腦子薰太多:-(

回答

0

你的表結構是相當混亂,但我認爲這可能幫助。

這種情況的SQL語句部分「我需要一個SQL命令來計算用戶的數量爲城市羣」將類似於以下內容:

SELECT group, COUNT(*) AS QtyOfUsers FROM [Table users] GROUP BY group 

對於你的問題,這部分「我需要快速確定城市羣的ID例如:David加入洛杉磯水暖工團體,什麼是SQL命令來識別團體的最後一個孩子「, SQL語句將類似於以下內容:

SELECT category, user_id, MAX(id) AS LatestRecordAdded FROM [table groups] GROUP BY category, user_id 
1

如果你有你應該使用帶有LFT,RGT,路徑和水平列的嵌套表和延長JTableNested爲你的表類真正的嵌套結構。然後使用它提供的標準方法獲取路徑,兒童人數等。然後把一個人放在一個城市裏會把那個人放在那個分支上的一切。用戶只能在一個城市或幾個城市? TBH你可以克隆標籤表或者真的,因爲它們支持嵌套,所以只需使用標籤週期即可。或者,如果user:city是1:1關係,則可以使用類別。