为了账号安全,请及时绑定邮箱和手机立即绑定

mysql如何检索评论和针对评论的回复

mysql如何检索评论和针对评论的回复

Qyouu 2019-04-27 17:17:01
需求是获取文章下的评论以及评论的回复大概形式是这样A:这是一条评论B:这是评论的回复回复B:这是评论的回复的回复回复C:这是评论的回复的回复的回复然后之前的做法是:先select出评论在foreach评论逐条select出评论的所有回复,再按时间排序,归类到评论的子集中但是一旦评论多了之后就会出现性能瓶颈,如何科学高效地拿到这个评论和回复的集合?包括数据表如何设计和代码的逻辑,求大神赐教。补充:表的结构可以修改,我想知道科学一点的表一般是怎么设计的?或者说如何设计这个表能够最大程度提高性能再补充:还有一个问题,就是如果我只需要获得单个评论下的三条回复内容,以及单个评论下所有回复的数量,又该怎么处理这个逻辑或者说sql怎么写呢?
查看完整描述

2 回答

?
回首忆惘然

TA贡献1847条经验 获得超11个赞

可以加一个字段depth比如1-3-5;首先查评论肯定是要分页的每页数量可控。每一条再根据这个depth查询他的回复评论。这样可以减少查库次数,效率会好一些
                            
查看完整回答
反对 回复 2019-04-27
?
莫回无

TA贡献1865条经验 获得超7个赞

评论其实是一个树形的结构,可以用两个字段标识:
response_id//回复的评论id
root_response_id//回复的最根级评论
查询的时候先查response_id为空的记录即根级目录(比如查出每页5条或者10条),再来一个IN查询,总共2次。
                            
查看完整回答
反对 回复 2019-04-27
  • 2 回答
  • 0 关注
  • 802 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信