SQL查询-用于记录计数



我有一个名为">history"的表(列名为:ID、Records、Stage、Date(,其中我有以下记录:

1    Record1    Stage1  Date
2    Record2    Stage1  Date
3    Record3    Stage1  Date
4    Record1    Stage2  Date

所有具有一定优先级的记录都保存在名为">Records"的主表中(列名为:id、Record、Stagename、date(,如下所示

1   Record1 High    Date    
2   Record2 Low Date
3   Record3 Medium  Date
upto more than 100+ records

所以我想显示高、低和中的计数期望输出:

[#]对于第1阶段

High - 1
Low - 1
Medium -1 

[#]对于第2阶段

High - 1
Low - 0
Medium - 0

你能帮我做这件事吗?

我的代码是:

$stagename = "Stage 1";
$query= $conn->prepare("SELECT count(*) FROM history WHERE stagename=?");
$stmt->execute(array($getstagename));
$count= $stmt->fetchColumn();

我在猜测列名(因为您没有包括它们(,但查询应该是这样的:

select
h.stage,
r.priority,
count(*)
from history h
join records r on r.record_name = h.record_name
group by h.stage, r.priority
order by h.stage, r.priority

相关内容

  • 没有找到相关文章

最新更新