繁体   English   中英

PHP MySQL将多个fetchcolumn组合成一个查询

[英]PHP MySQL combine multiple fetchcolumn into a single query

我目前有一个用户和可变用户状态的表(1,2,3,4,5等)。 我目前正在分别计算每个状态中的用户数

$query = "SELECT COUNT(*) FROM users WHERE status = 1";
$result = $pdo->query($query);
$users1 = $result->fetchColumn();

$query = "SELECT COUNT(*) FROM users WHERE status = 2";
$result = $pdo->query($query);
$users2 = $result->fetchColumn();

etc

我可以获取一个fetch,然后循环遍历所有结果并添加每个状态,但我想知道是否有更好的方法来执行查询?

您可以使用group by并获取带有计数的列表

SELECT status, COUNT(*)  as my_count FROM users group by status;

请注意,您不能使用fetchColumn ..而是fetchRow。并且可以按键访问

你jsut需要添加状态为group by

SELECT COUNT(*),status FROM users group by status

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM