2015-10-14 43 views
1

我試圖獲得至少有3個項目的所有帳戶。獲取至少3個項目的所有帳戶

我決定從鏈接表開始:

SELECT 
     accounts_project_1accounts_ida 
FROM accounts_project_1_c 

GROUP BY accounts_project_1accounts_ida 
HAVING COUNT(accounts_project_1accounts_ida) > 3 

但它返回所有的表,即使只有一個項目賬戶。

例如,下面的查詢只返回1個結果:

SELECT * FROM `accounts_project_1_c` WHERE `accounts_project_1accounts_ida` LIKE '25490fce-5354-d1a2-fbe7-541b6c5b57d0' 

這裏是表結構:

enter image description here

你知道我在做什麼錯?

+1

HAVING COUNT(*)...? –

+0

是的,結果相同 – Vico

回答

1

您HAVING子句不正確。它應該是

HAVING COUNT(accounts_project_1project_idb) > 3 

從你的模式,我明白,每個項目都有一個ID,accounts_project_1project_idb以及與之相關聯的賬戶。該帳戶的ID是accounts_project_1accounts_ida。所以你需要根據賬號的記錄進行分組,然後選擇至少有三個項目(表中有三條記錄)的所有項目。話雖如此,我想如果你把你的HAVING條款改爲上面的條款,你會得到你想要的。

SELECT 
     accounts_project_1accounts_ida, 
     COUNT(accounts_project_1project_idb) 
FROM accounts_project_1_c 

GROUP BY accounts_project_1accounts_ida 
HAVING COUNT(accounts_project_1project_idb) > 3 
+0

謝謝你的回答。你是對的,一個帳號有一個帳號accounts_project_1accounts_ida,一個項目有一個帳號accounts_project_1project_idb,一個帳號可以有多個項目。儘管如此,改變HAVING子句並沒有改變任何東西。 – Vico

+0

@Vico歡迎您。請參閱我更新的帖子。我錯過了包括彙總到選擇語句:(。 – Christos

+0

我正要說:它不工作! 但我認爲這是一個PhpMyAdmin問題,它說3716結果,但只顯示150 ... 所以我猜它已經解決了!非常感謝。 – Vico

相關問題