1.问题:我一直不清楚一个SQL算出一个特定结果的写法,想向大神请教
2.代码:
SELECT tb.*,tbc.comment
from blog_tinyblog AS tb,blog_tbcomment AS tbc
where tb.user_id=tbc.user_id AND
tb.num=tbc.now_num
group by tbc.num_tiny_blog
我写的SQL是这样的,结果如图:
可这并不是我想要的结果,我希望去除重复,将comment存储为一个数组,成为只有一条结果的形式,请大神赤脚。也许可能会说用 distinct,但是不行
现在的情况是这样,可是我发的微博不止3条,有十几条,其他几条因为没有评论就不显示出来了,我不知道怎么写啊,我想显示所有的微博和对应的评论
1.问题:我一直不清楚一个SQL算出一个特定结果的写法,想向大神请教
2.代码:
SELECT tb.*,group_concat(distinct tbc.comment)
from blog_tinyblog AS tb,blog_tbcomment AS tbc
where tb.user_id=tbc.user_id AND
tb.num=tbc.now_num
group by tb.*
select distinct comment form ...
这样肯定能去除重复,但要存成一个数组的话,基础的sql语句,没见过有这功能的。
加了group_concat是可以的。
SELECT tb.*,GROUP_CONCAT(tbc.comment)
from blog_tinyblog AS tb
,blog_tbcomment AS tbc
where tb.user_id=tbc.user_id
AND tb.num=tbc.now_num
group by tbc.num_tiny_blog #这个条件很重要
关键在于你用哪些字段进行分组,
我是搂搂,我现在的情况是能显示所有微博对应的评论了,但是那些没有评论的微博就显示不出来,请教下怎么写