首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >选择总评论(pos & neg) +每个评论的最新评论

选择总评论(pos & neg) +每个评论的最新评论
EN

Stack Overflow用户
提问于 2011-11-17 22:53:30
回答 1查看 50关注 0票数 0

我正在写一个查询,以获得排名前10的企业,每个企业的正面评论数量,每个企业的负面评论数量,以及每个企业的最新评论。

代码语言:javascript
运行
复制
SELECT comment.bis_id, Sum( Case When comment.rating <= 2 Then 1 Else 0 End ) As NegVotes
, Sum( Case When comment.rating >= 4 Then 1 Else 0 End ) As PosVotes, bis.bis_name
FROM bis, comment
WHERE comment.bis_id = bis.bis_id
GROUP BY bis_id
ORDER BY PosVotes DESC
LIMIT 0, 10";

上面的评论既有正面的,也有负面的,但我似乎不知道如何获得最新的评论。

EN

回答 1

Stack Overflow用户

发布于 2011-11-17 23:03:38

代码语言:javascript
运行
复制
SELECT 
  c.bis_id
  , Sum( Case When c.rating <= 2 Then 1 Else 0 End ) As NegVotes 
  , Sum( Case When c.rating >= 4 Then 1 Else 0 End ) As PosVotes
  , b.bis_name 
  , cc.last_comment
FROM bis b
INNER JOIN comment c on (c.bis_id = b.bis_id)
INNER JOIN (SELECT c2.bis_id, c2.comment_text as last_comment 
            FROM comment c2
            GROUP BY c2.bis_id
            HAVING c2.comment_date = MAX(c2.comment_date) ) cc 
        ON (cc.bis_id = b.bis_id)          
GROUP BY b.bis_id 
ORDER BY PosVotes DESC 
LIMIT 10 OFFSET 0
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8169174

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档