[英]Count occurrences of value in row
我的mySQL
数据库中有一行叫做"status"
。 在那一行中,我得到了三个不同的值,即"S", "R" or "L"
。
用php计算和输出每个值的出现次数的最简单方法是什么?
谢谢!
没有全面了解数据库很难说,但是基本结构是这样(假设您还有另一行称为id)
编辑:在php中演示
$dbc = new mysqli($host, $username, $password, $dbname);
$query = $dbc->query("select id, count(status) as status_count
where status = 'S'
group by id");
$query->fetch_assoc();
$row = $query->fetch_assoc();
echo $row['status_count'];
或者,如果您有多个行,请按照以下步骤操作:
while ($row = $query->fetch_assoc()) {
echo $row['status_count'];
}
您可以使用以下方法将计数作为单独的行获取:
SELECT status, COUNT(*) as count
FROM yourTable
GROUP BY status
您可以使用以下命令将它们放在一行中:
SELECT SUM(status = 'S') AS s, SUM(status = 'L') AS l, SUM(status = 'R') as r
FROM yourTable
之后,您可以读取单行结果:
$row = $pdo->fetch(PDO::FETCH_ASSOC);
$s_count = $row['s'];
$l_count = $row['l'];
$r_count = $row['r'];
更好的方法是使用COUNT使用mysql查询
您可以计算来自数据库的所有原始SELECT COUNT(*)或来自数据库的一个原始SELECT COUNT(colum_name)
为了更容易,您可以给它一个这样的变量名:SELECT COUNT(Colum_name)as FROM FROM DATABASE
因此,在连接数据库之后,使用以下示例:
$ query = mysql_query ('SELECT COUNT (R) as R FROM status');
$ result = mysql_fetch_array ($ query);
Echo $ result ['R']
希望这个能对您有所帮助 !
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.