文章详情页
mysql查询排序问题
浏览:221日期: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. android-studio - Android Studio编译出错2. javascript - SuperSlide.js火狐不兼容怎么回事呢3. 提示SQLSTATE[HY093]: Invalid parameter number: parameter was not defined4. docker镜像push报错5. mac里的docker如何命令行开启呢?6. Windows系统能否利用Docker使用Ubuntu吗?Ubuntu能使用本机的显卡吗?7. javamail发送邮件是否跟所在的网络环境有关?8. 前端HTML与PHP+MySQL连接9. docker内创建jenkins访问另一个容器下的服务器问题10. java - 请问一下genymotion如何连接到内网上一个网站
排行榜

网公网安备