作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有 2 个表,其中一个包含用户评论,另一个是单击“我喜欢”按钮的列表
TABLE COMMENTS
id | comment | data
---|---------|------
1 | blabla | 12345
2 | hello | 12345
3 | hi | 12345
4 | test | 12345
5 | yuhuu | 12345
6 | dunno | 12345
7 | hello | 12345
8 | blabla | 12345
9 | test | 12345
TABLE ILIKE
id | comment_id | name
---|------------|------
1 | 5 | Peter
2 | 8 | Tim
3 | 5 | Joe
4 | 5 | Peter
5 | 3 | Joe
6 | 8 | Joe
7 | 8 | Peter
8 | 5 |
9 | 3 | Joe
10 | 2 |
11 | 2 |
现在我会计算每条评论有多少条我喜欢的,并且......显示评论者的用户名列表...
所以结果表应该是......类似的东西:
TABLE RESULT
id | comment | data | totlike | from_names
---|---------|-------|---------|--------
1 | blabla | 12345 | 0 |
2 | hello | 12345 | 2 |
3 | hi | 12345 | 2 | Joe
4 | test | 12345 | 0 |
5 | yuhuu | 12345 | 4 | Joe, Peter //double name appears just one time
6 | dunno | 12345 | 0 |
7 | hello | 12345 | 0 |
8 | blabla | 12345 | 3 | Joe, Peter, Tim //if possible order in alphabetic order
9 | test | 12345 | 0 |
如果可能的话我不想要重复的名字我在这里尝试,但我可以做计数人员,但不能做“连接字符串”部分......
http://sqlfiddle.com/#!2/0c9b1d/2
谁能解决这个问题?
SELECT comments.id, comments.comment, count(ilike.id) as count
FROM comments
LEFT JOIN ilike on ilike.comment_id=comments.id
WHERE 1 GROUP BY comments.id
谢谢你,N.
最佳答案
尝试使用
GROUP_CONCAT(ILIKE.name ORDER BY ILIKE.name)
创建逗号分隔列表。
另外,要小心。您正在使用 GROUP BY 的非标准 MySQL 扩展。您似乎正确使用了它,但是查询中的任何更改都可能会改变这一点。如果您切换到
GROUP BY comments.id, comments.comment
您将不再依赖该扩展。
关于Mysql 计数并连接多个文本行 - 可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26846052/
我想开发一个 Skype 机器人,它将用户名作为输入,并根据用户输入以相反的字符大小写表示hello username。简而言之,如果用户输入他的名字 james,我的机器人会回复他为 Hello J
我是一名优秀的程序员,十分优秀!