使用PDO计算MySQL表中的行数

时间:2010-05-12 20:23:12

标签: php mysql pdo

需要使用PDO计算MySQL表中每个类别的行数。例如,我需要有类别1,类别2等的条目数。如果可能,我想这样做而不必为每个类别写出SQL语句。

谢谢!

1 个答案:

答案 0 :(得分:5)

您需要的SQL类似于:

SELECT category_name, COUNT(*) AS total FROM category_table
GROUP BY category_name

这将返回一个结果集,每个类别都有一行。每行有两列:类别名称和具有该类别名称的记录总数。相同的技术适用于类别ID或您可能想要使用的任何其他键。

您可以这样使用它:

$sql = 'SELECT category_name, COUNT(*) AS total FROM category_table '.
       'GROUP BY category_name';

$db = new PDO($database, $user, $password);
$results = $db->query($sql)->fetchAll(PDO::FETCH_ASSOC);

// $results is now an array with the query results

编辑添加了示例PHP代码。