this.user Posted November 3, 2009 Share Posted November 3, 2009 lets say i have a table called members idnamegroup 1e1 2f1 3g2 and I want to execute a query that calls the table returns a row for every member and at the same time tells me how many people are that persons group. so for example it would return e 2 f 2 g 1 the query i have tried using does not work: select count(t.id) As tcount, member.name from member LEFT JOIN member AS t ON(t.group = member.group) Group by t.group Quote Link to comment https://forums.phpfreaks.com/topic/180133-solved-left-join-same-table-to-get-count/ Share on other sites More sharing options...
Mchl Posted November 3, 2009 Share Posted November 3, 2009 First of all GROUP is one of MySQL reserved words, so it shouldn't be used as column name. Then: SELECT t1.id, t1.name, t1.`group`, t2.groupCount FROM member AS t1 LEFT JOIN ( SELECT `group`, COUNT(*) AS groupCount FROM member GROUP BY `group` ) AS t2 ON t1.`group` = t2.`group` Quote Link to comment https://forums.phpfreaks.com/topic/180133-solved-left-join-same-table-to-get-count/#findComment-950352 Share on other sites More sharing options...
this.user Posted November 4, 2009 Author Share Posted November 4, 2009 Thx mchl Quote Link to comment https://forums.phpfreaks.com/topic/180133-solved-left-join-same-table-to-get-count/#findComment-950752 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.