统计php中value AFTER sql查询的实例数


Count the number of instances of value AFTER sql query in php

我已经为此工作了一段时间。我在数据库中查询下面的信息。

然后我想计数值(Servicepack 3、2和1),并将每个计数数分配给一个单独的变量。我宁愿不做单独的SQL查询或计数使用SQL查询。

感谢
//-----------------------------------------------
// Perform operations with connection.
//-----------------------------------------------
$sql = "SELECT Name, DomainName, OperatingSystem, ServicePack FROM Computers";
$stmt = sqlsrv_query( $conn, $sql );
// Check for 0 results
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}

如果你想在php中计数,你可以这样做。(在你的代码之后)

$counts = array(
    'Servicepack 3' => 0,
    'Servicepack 2' => 0,
    'Servicepack 1' => 0,
);
while($row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC)) {
    if (isset($counts[$row['ServicePack']])) {
        ++$counts[$row['ServicePack']];
    }
}

但是你知道你可以用SQL来做这个。像. .

$sql = "SELECT COUNT(*) AS ServicePackCounts, OperatingSystem, ServicePack FROM Computers GROUP BY OperatingSystem, ServicePack";