php - 组sql查询

标签 php mysql

我想要一个包含 2 个查询的唯一查询,但我不知道如何开始... 我的查询会计算评论的正面/负面投票数。

SELECT COUNT(id) AS votes_no FROM comments_votes WHERE vote = 0 AND id_comment = 1
SELECT COUNT(id) AS votes_no FROM comments_votes WHERE vote = 1 AND id_comment = 1

我设置 vars 来投反对票和赞成票:$votes_no$votes_yes

然后我有一个最终的变量:$votes_calc = $votes_yes - $votes_no;

如何在一次查询中获取 votes_yes、votes_no 和 votes_calc 的数量?

非常感谢!

最佳答案

select votes_no, votes_yes, votes_yes-votes_no as votes_calc
from (select sum(case when vote = 0 then 1 else 0 end) as votes_no,
             sum(case when vote = 1 then 1 else 0 end) as votes_yes
      from comments_votes
      where id_comment = 1) a

关于php - 组sql查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4608389/

相关文章:

php - MySQL - 选择本周最少的一天,不一定是一周的第一天

mysql - 如何在 Mysql 中连接 2 行,其中某一列是 DIstinct

php - 使用 PDO 运行多个查询时如何出错?

php - 如何使用 HTTP header 缓存动态 CSS?

php - 为什么 ORDER BY 子句中的绑定(bind)参数不对结果进行排序?

PHP:通过 jQuery ajax 帮助检索 JSON

php - SELECT count(column) 比 SELECT * 慢

mysql - SQL 分组依据 : intervals in continuity?

mysql - phpmyadmin 不再让我设置 auto_increment 值

php - 如何编辑这个非常复杂的导致服务器崩溃的 Joomla 查询