mysql 查询语句,急急急,结帖给分

qq_34354426 2017-08-18 09:54:58



注释:news_id 新闻id , user_id 当前用户id , parent_id 回复用户的ID ,comment 评论内容, like_it 是否点赞,1点赞,0未点

条件: 我要查出news_id=1的所有数据,然后排序先按点赞数倒叙排序,在按时间倒序,最后分页!!
...全文
575 35 打赏 收藏 转发到动态 举报
写回复
用AI写文章
35 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
引用 9 楼 qq_34354426 的回复:
[quote=引用 6 楼 sinat_28984567 的回复:]
试试这个,另外楼主记得下次点击“引用”,不然层主看不到你的回复
SELECT  *
FROM comments
LEFT JOIN ( SELECT parent_id ,
COUNT(1) AS likecount
FROM comments
WHERE news_id = 1
AND like_it = 1
GROUP BY parent_id
) t ON comments.id = t.parent_id
ORDER BY t.likecount DESC,comment_time
你的SQL真乃是登峰造极了~~佩服佩服~~~~[/quote]数据一多久不对了~~~~
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
引用 10 楼 sinat_28984567 的回复:
试试这个
SELECT  *
FROM    comments
        LEFT JOIN ( SELECT  parent_id ,
                            COUNT(1) AS likecount
                    FROM    comments
                    WHERE   news_id = 1
                            AND like_it = 1
                    GROUP BY parent_id
                  ) t ON comments.id = t.parent_id
WHERE   comment <> ''
        AND comment IS NOT NULL
ORDER BY t.likecount DESC ,
        comment_time
如果我只想排序likecount前面三条数据,后面的就用时间排序了,,,
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
引用 10 楼 sinat_28984567 的回复:
试试这个
SELECT  *
FROM    comments
        LEFT JOIN ( SELECT  parent_id ,
                            COUNT(1) AS likecount
                    FROM    comments
                    WHERE   news_id = 1
                            AND like_it = 1
                    GROUP BY parent_id
                  ) t ON comments.id = t.parent_id
WHERE   comment <> ''
        AND comment IS NOT NULL
ORDER BY t.likecount DESC ,
        comment_time
66666666666666666我结贴了,,谢谢大神~~~~~~~~~~么么哒@@@@@@
二月十六 2017-08-18
  • 打赏
  • 举报
回复
试试这个
SELECT  *
FROM comments
LEFT JOIN ( SELECT parent_id ,
COUNT(1) AS likecount
FROM comments
WHERE news_id = 1
AND like_it = 1
GROUP BY parent_id
) t ON comments.id = t.parent_id
WHERE comment <> ''
AND comment IS NOT NULL
ORDER BY t.likecount DESC ,
comment_time
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
引用 6 楼 sinat_28984567 的回复:
试试这个,另外楼主记得下次点击“引用”,不然层主看不到你的回复
SELECT  *
FROM    comments
        LEFT JOIN ( SELECT   parent_id ,
                        COUNT(1) AS likecount
               FROM     comments
               WHERE    news_id = 1
                        AND like_it = 1
               GROUP BY parent_id
             ) t ON comments.id = t.parent_id
ORDER BY t.likecount DESC,comment_time
你的SQL真乃是登峰造极了~~佩服佩服~~~~
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
引用 6 楼 sinat_28984567 的回复:
试试这个,另外楼主记得下次点击“引用”,不然层主看不到你的回复
SELECT  *
FROM comments
LEFT JOIN ( SELECT parent_id ,
COUNT(1) AS likecount
FROM comments
WHERE news_id = 1
AND like_it = 1
GROUP BY parent_id
) t ON comments.id = t.parent_id
ORDER BY t.likecount DESC,comment_time
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
引用 6 楼 sinat_28984567 的回复:
试试这个,另外楼主记得下次点击“引用”,不然层主看不到你的回复
SELECT  *
FROM    comments
        LEFT JOIN ( SELECT   parent_id ,
                        COUNT(1) AS likecount
               FROM     comments
               WHERE    news_id = 1
                        AND like_it = 1
               GROUP BY parent_id
             ) t ON comments.id = t.parent_id
ORDER BY t.likecount DESC,comment_time
把comment为null的去掉就完美了,,,厉害啦word 哥
二月十六 2017-08-18
  • 打赏
  • 举报
回复
试试这个,另外楼主记得下次点击“引用”,不然层主看不到你的回复
SELECT  *
FROM comments
LEFT JOIN ( SELECT parent_id ,
COUNT(1) AS likecount
FROM comments
WHERE news_id = 1
AND like_it = 1
GROUP BY parent_id
) t ON comments.id = t.parent_id
ORDER BY t.likecount DESC,comment_time
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
每点一个赞,也是添加一条数据
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
不行啊大牛,,,,我想查出,最热评论的前三条,然后后面就是按时间评论的
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
二月十六 2017-08-18
  • 打赏
  • 举报
回复
没测试,试试这个:
SELECT  *
FROM comments
JOIN ( SELECT parent_id ,
COUNT(1) AS likecount
FROM comments
WHERE news_id = 1
AND like_it = 1
GROUP BY parent_id
) t ON comments.id = t.parent_id
ORDER BY t.likecount DESC
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
11111111111111111
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
引用 34 楼 qq_34354426 的回复:
[quote=引用 32 楼 sinat_28984567 的回复:] [quote=引用 31 楼 qq_34354426 的回复:] [quote=引用 30 楼 sinat_28984567 的回复:] [quote=引用 28 楼 qq_34354426 的回复:] 你看看id=9的那条数据他有几个赞,他又四个赞呀,为什么不是排在第一,,
他没有赞啊 [/quote]大兄弟我错啦。。。。。晕了晕了~~~~[/quote] [/quote][/quote]麻烦你了哈,,,真的是懵逼了,,,我错了~~~~~~~~
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
引用 32 楼 sinat_28984567 的回复:
[quote=引用 31 楼 qq_34354426 的回复:] [quote=引用 30 楼 sinat_28984567 的回复:] [quote=引用 28 楼 qq_34354426 的回复:] 你看看id=9的那条数据他有几个赞,他又四个赞呀,为什么不是排在第一,,
他没有赞啊 [/quote]大兄弟我错啦。。。。。晕了晕了~~~~[/quote] [/quote]
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
麻烦你了哈,,,真的是懵逼了,,,我错了~~~~~~~~
二月十六 2017-08-18
  • 打赏
  • 举报
回复
引用 31 楼 qq_34354426 的回复:
[quote=引用 30 楼 sinat_28984567 的回复:] [quote=引用 28 楼 qq_34354426 的回复:] 你看看id=9的那条数据他有几个赞,他又四个赞呀,为什么不是排在第一,,
他没有赞啊 [/quote]大兄弟我错啦。。。。。晕了晕了~~~~[/quote]
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
引用 30 楼 sinat_28984567 的回复:
[quote=引用 28 楼 qq_34354426 的回复:] 你看看id=9的那条数据他有几个赞,他又四个赞呀,为什么不是排在第一,,
他没有赞啊 [/quote]大兄弟我错啦。。。。。晕了晕了~~~~
二月十六 2017-08-18
  • 打赏
  • 举报
回复
引用 28 楼 qq_34354426 的回复:
你看看id=9的那条数据他有几个赞,他又四个赞呀,为什么不是排在第一,,

他没有赞啊
「已注销」 2017-08-18
  • 打赏
  • 举报
回复
引用 28 楼 qq_34354426 的回复:
[quote=引用 27 楼 sinat_28984567 的回复:]
SELECT  *
FROM    cms_content_comments
        LEFT JOIN ( SELECT  parent_id ,
                            COUNT(1) AS likecount
                    FROM    cms_content_comments
                    WHERE   news_id = 1
                            AND like_it = 1
                    GROUP BY parent_id
                  ) t ON cms_content_comments.id = t.parent_id
WHERE   comment <> ''
        AND comment IS NOT NULL
ORDER BY t.likecount DESC ,
        comment_time
这样不对?
引用 27 楼 sinat_28984567 的回复:
SELECT  *
FROM    cms_content_comments
        LEFT JOIN ( SELECT  parent_id ,
                            COUNT(1) AS likecount
                    FROM    cms_content_comments
                    WHERE   news_id = 1
                            AND like_it = 1
                    GROUP BY parent_id
                  ) t ON cms_content_comments.id = t.parent_id
WHERE   comment <> ''
        AND comment IS NOT NULL
ORDER BY t.likecount DESC ,
        comment_time
这样不对?
你看看id=9的那条数据他有几个赞,他又四个赞呀,为什么不是排在第一,,[/quote]其他的都对,唯一纳闷的就是我给id=9的评论点了四个赞啊~~~~为什么他显示为null呢
加载更多回复(15)

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧