SELECT `member_name.smf_members`, COUNT(`author.smf_links`)
FROM smf_members, smf_links
JOIN smf_links ON id_member.smf_members = author.smf_links;
GROUP BY `author.smf_links`
它说smf_links不是唯一的表/别名。我想做的就是让它计算出同一作者有多少行,并显示成员名而不是作者(这是一个数字)和计数。
所以代替: 1 | 23
它会显示: 兔子| 23
我无法解决这个问题,而且我的大脑因谷歌搜索而麻木了。有人可以帮帮我吗? :)
答案 0 :(得分:4)
您收到的错误是因为您要使用同一个表smf_links
加入两次。如果这是你真正想做的事情,你需要给它们别名,这样你才能区分它们。但我怀疑你错误地这样做了。
此外,语法为tablename.column
,而不是column.table
。你必须分别在每个部分周围放置反引号;如果.
在反引号中,则将其视为文字字符,而不是分隔符。
SELECT `smf_members`.`member_name`, COUNT(*)
FROM smf_members
JOIN smf_links ON smf_members.id_member = smf_links.author
GROUP BY smf_links.author