0

我需要从一个表中的行中显示类似数据的计数来制作报告,我已经有了这个脚本,但不能让它工作......我看到使用 HAVING COUNT 我可以显示重复的数据和计数表格行但我可以做到

<ul>
    <? 
        $select_product_dups = $conn->prepare("SELECT id_diagnosticon, diagnostico, diagnostico1, diagnostico2, diagnostico3 FROM DIAGNOSTICON GROUP BY diagnostico HAVING count(diagnostico)>1 AND diagnostico1 HAVING count(diagnostico1)>1 AND diagnostico2 HAVING count(diagnostico2)>1 AND diagnostico3 HAVING count(diagnostico3)>1");
        $select_product_dups->setFetchMode(PDO::FETCH_ASSOC);
        $select_product_dups->execute();
        while ($row = $select_product_dups->fetch()){
        echo '<li id="item_'.$row["id_diagnosticon"].'">';
        if (!empty($row["diagnostico"]))
        {
            echo $row["diagnostico"]; echo '<br><br>';
        }
        if (!empty($row["diagnostico1"]))
        {
            echo $row["diagnostico1"]; echo '<br><br>';
        }
        if (!empty($row["diagnostico2"]))
        {
            echo $row["diagnostico2"]; echo '<br><br>';
        }
        if (!empty($row["diagnostico3"]))
        {
            echo $row["diagnostico3"]; echo '<br><br>';
        }echo '</li>';
        }
    ?>
</ul>

我需要像这样显示数据(如果可以显示图表也将是完美的):

  • 牛皮癣 4
  • 痤疮 20
  • 癌 2
  • 黑色素瘤 5

数据(牛皮癣、痤疮...等)是医生插入的数据

4

1 回答 1

0

将您的 SQL 更改为以下内容:-

SELECT id_diagnosticon, diagnostico, COUNT(diagnostico1), COUNT(diagnostico2), COUNT(diagnostico3) 
FROM DIAGNOSTICON 
GROUP BY id_diagnosticon, diagnostico 
HAVING COUNT(diagnostico1)>1 AND COUNT(diagnostico2)>1 AND COUNT(diagnostico3)>1

但这是假设您需要计算哪些以及您想要分组的那些

于 2013-07-12T20:50:21.203 回答