文章详情页
mysql查询排序问题
浏览:332日期:2022-06-21 08:05:36
问题描述
hi ,guys.
问题是这样的,我有一张comment表,存储了所有用户的评论。
其中,pid代表该评论的父评论id。我想要获取pid为0的评论,按照它的子评论(评论的回复)的从大到小排列。
db使用了mysql,我不知该怎么写这个SQL。你能帮我么?
谢~~la
问题解答
回答1:不知道理解的对不对,查询并排序:select * from comment where pid = 0 order by (子评论回复字段 )desc
回答2:SELECT p.* FROM comment p LEFT JOIN comment c ON p.id = c.pid AND p.pid = 0 ORDER BY c.id desc
如果一个父评论下面有多个子评论,需要用到子查询
SELECT p.* FROM comment p LEFT JOIN (SELECT MAX(id) as id , pid FROM comment where pid != 0 GROUP BY pid) c ON p.id = c.pid AND p.pid = 0 ORDER BY c.id desc
不知道理解的对不对
相关文章:
1. windows-7 - Win7中Vmware Workstatoin与Xampp中Apache服务器端口冲突?2. mysql新建字段时 timestamp NOT NULL DEFAULT ’0000-00-00 00:00:00’ 报错3. 怎样写一个时间到了或是有订单的语音提醒呢?4. 登录界面URL在服务器上无法找到5. mysql连表排序6. mysql - 数据库字段命名问题,新人,求解7. mysql group by多个字段8. MySQL分表之后如何做排序的问题9. python - django 项目的 migrations 目录是否应该提交到 git10. mysql - SQL添加记录的数据来源于同一个表
排行榜

网公网安备