php - 通过在单个表中使用 count 来组合多个 mysql_num_rows 查询

标签 php mysql

有什么方法可以组合以下查询(我们可以使用 COUNT 或其他方式组合这些查询吗)。

$resultacgc = mysql_query("SELECT mno FROM table1 WHERE (m_jid='$sid' AND decision='accept-gf')");
  $numacgc = mysql_num_rows($resultacgc);
$resultacp = mysql_query("SELECT mno FROM table1 WHERE (m_jid='$sid' AND decision='accept-p')");
  $numacp = mysql_num_rows($resultacp);
$resultacpc = mysql_query("SELECT mno FROM table1 WHERE (m_jid='$sid' AND decision='accept-pc')");
  $numacpc = mysql_num_rows($resultacpc);
$resultacr = mysql_query("SELECT mno FROM table1 WHERE (m_jid='$sid' AND decision='accept-rdy')");
  $numacr = mysql_num_rows($resultacr);
$resultacft = mysql_query("SELECT mno FROM table1 WHERE (m_jid='$sid' AND decision='accept-ft')");
  $numacft = mysql_num_rows($resultacft);

P.S.:我知道“mysql_*”已被弃用。

谢谢

最佳答案

您可以使用mysql IN。

像这样:

"SELECT mno FROM table1 WHERE (m_jid='$sid' AND decision IN ('accept-gf', '...', '...'))"

如果您想获得每个计数,您需要执行以下操作:

"SELECT decision, COUNT(*) AS count FROM table1 WHERE (m_jid='$sid' AND decision IN ('accept-gf', '...', '...')) GROUP BY decision"

关于php - 通过在单个表中使用 count 来组合多个 mysql_num_rows 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36916802/

相关文章:

Mysql 查询优化,将 CASE Exists (SELECT...) 移动到左连接中

php - CakePHP 3 中的内部联接不返回任何行

javascript - 从 laravel blade 调用 vue 方法

php - 返回嵌入在 php 函数中的 onclick 链接

php - 使用比较时mysql查询返回问题

mysql - LEFT JOIN 3列获取用户名

php - 使用 PHP 和 MySQL 进行事件编程

PHP 通过 header 重定向传递变量

php - 如何正确服务 CSS

mysql - 如何选择比一周新的行?