嗨即時通訊問題計算羣組成員。我現在的查詢返回給定用戶所屬的每個組的一行。但是我想讓成員的數量也顯示出來。這三個表即時通訊使用這個樣子的:羣組中的SQLite計數成員
下面是該查詢即時與合作: 查找範圍編輯!
如果我忽略了代碼的COUNT部分,我收到了2組我期待的內容。但是當我在COUNT中添加它時,它只返回一個成員= 2的組。所以它看起來很重要,但我不確定它是否是正確的答案。
在此先感謝!
嗨即時通訊問題計算羣組成員。我現在的查詢返回給定用戶所屬的每個組的一行。但是我想讓成員的數量也顯示出來。這三個表即時通訊使用這個樣子的:羣組中的SQLite計數成員
下面是該查詢即時與合作: 查找範圍編輯!
如果我忽略了代碼的COUNT部分,我收到了2組我期待的內容。但是當我在COUNT中添加它時,它只返回一個成員= 2的組。所以它看起來很重要,但我不確定它是否是正確的答案。
在此先感謝!
假設你每一個與用戶1關聯組中的參與者的總數之後是......
SELECT gu1.group_id_foreign
, COUNT(*) ttl
FROM group_participants gu1
JOIN group_participants gu2
ON gu2.group_id_foreign = gu1.group_id_foreign
WHERE gu1.user_id_foreign = 1
GROUP
BY gu1.group_id_foreign;
http://sqlfiddle.com/#!2/821ad/1
順便說一句,在group_participants表中的列_id出現服務沒有目的,而且,對於我的思維方式,你的命名規則是瘋狂的! ;-)
_id僅作爲主鍵。我甚至不知道我是否必須使用它,但是是的。它不會傷害它:)並且謝謝。您發佈的代碼有效! –
你已經有了一個完全充足的自然鑰匙。您應該將其設置爲PRIAMRY。 ;-) – Strawberry
嗯既不是user_id_foreign或group_id_foreign是唯一的,你可以在小提琴中看到所以這不會工作。我需要_id –
看起來像你缺少一個組by條款 – Strawberry
我試過GROUP BY gp.group_id_foreign。哪個返回這兩個組,但每個成員數爲1,這不是正確的結果 –
我想你會想通過g.something進行分組。如果你仍然在努力發佈適當的DDL和/或sqlfiddle與期望的結果 – Strawberry