繁体   English   中英

如何总结在PHP中的foreach循环

[英]how to sum in foreach loop in php

这是我的代码,我想要字段的总和,但是无法做到这一点,任何人都可以在这方面提供帮助

<?php
     $hostname="localhost";  
     $username="root";  
     $password="";  
     $db = "usman";  

     $dbh = new PDO("mysql:host=$hostname;dbname=$db", $username, $password);  

     foreach($dbh->query("SELECT COUNT(*) as cnt
     FROM ams 
     WHERE empid= {$_SESSION['sess_user_id']} 
     GROUP BY leavetype 
     HAVING leavetype =               
     sum('Absent'), sum('Annual'),sum('Medical'), 
     sum('Casual') , sum('LWOP') ") as  $GrandTotal) 
     {  
           echo "<table ><tr ><td style='border: 0px; ' >" .        
           $GrandTotal['cnt'] . "</td></tr></table>";    
           echo "<br>"; 
     }
?>

HAVING是对分组结果的过滤器,而不是选择任何内容的方法

我想你需要类似的东西

SELECT 
  leavetype, 
  count(*) as cnt
FROM ams 
 where empid= {$_SESSION['sess_user_id']} 
 and leavetype in ('Absent', 'Annual','Medical',  'Casual' , 'LWOP') -- if you want only certain leave types
GROUP BY leavetype

如果您只想计算所有这些休假类型的数量,就可以

SELECT 
 count(*) as cnt
FROM ams 
where empid= {$_SESSION['sess_user_id']} 
and leavetype in ('Absent', 'Annual','Medical',  'Casual' , 'LWOP') 

暂无
暂无

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

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