2017-08-10 65 views
0

我想計算按用戶標識分組的一個表格中的所有條目。從不同表格中選擇具有數值的計數

這是我使用的查詢工作正常。

select uuid_mapping_id, count(*) from t_message group by uuid_mapping_id; 

,這些都是結果:

+-----------------+----------+ 
| uuid_mapping_id | count(*) | 
+-----------------+----------+ 
|    1 |  65 | 
|    4 |  277 | 

現在我想顯示實際的用戶名,而不是ID。 爲了實現這一點,我需要兩個不同表格的幫助。

  • uid_mapping_id,這在其他表等於uuid_mapping_id:

    其中有兩列的表t_uuid_mapping。

  • 而f_uuid也是獨特的,但完全不同。

f_uuid也可以在另一個表t_abook中找到,它也包含列f_name中的名稱。

我尋找的結果應該是:

+-----------------+----------+ 
| f_name   | count(*) | 
+-----------------+----------+ 
|   admin |  65 | 
|   user1 |  277 | 

我是新來的數據庫話題和理解,這可以通過使用連接查詢,但要實現說實話,我並沒有完全理解這還沒有。

+1

的可能的複製[MySQL的 - 加入2個表(https://stackoverflow.com/questions/10230438/mysql-join-2-tables) – Martin

+0

瞭解如何'加入'兩個MySQL表。你正在尋找的答案都已經在這裏。 – Martin

回答

-1

,如果我理解正確:

SELECT tm.f_name, COUNT(*) as count 
FROM t_message tm 
LEFT JOIN t_abook ta ON (tm.uuid_mapping_id = ta.uid_mapping_id) 
GROUP BY tm.f_name 
+0

現在我正確 - 我添加「on」 - – areklipno

+0

我改進了你的語法。 – Martin