我有以下sql代码:
$management_lcfruh_sql = "SELECT COUNT(schicht), codes.lcfruh, personal.status, dienstplan.kw, personal.perso_id, personal.sort_order, dienstplan.datum FROM dienstplan INNER JOIN codes ON dienstplan.schicht=codes.lcfruh INNER JOIN personal ON personal.perso_id=dienstplan.perso_id WHERE codes.lcfruh!='' AND personal.status='management' AND dienstplan.kw='$kw' ORDER BY personal.sort_order, dienstplan.datum";
$management_lcfruh_result= mysql_query($management_lcfruh_sql);
如何获得一个计数列表而不是一个计数,dienstplan.kw ='$ kw'是一年中有一个星期的一周,所以我应该列出7个结果而不是一个计数这七个人。
<?php
while($rows=mysql_fetch_array($management_lcfruh_result)){
?>
<? echo $rows['COUNT(schicht)']; ?>
<?php
}
?>
答案 0 :(得分:0)
嗯,你在额外的信息方面没有得到很大的帮助,但可能会让你朝着正确的方向前进。
给定Table1(WeekNo int, Category int, Schict int)
和Table2 (WeekNo int, Schict int, CategoryDate dateTime)
然后
Select t1.Catgeory, DayName(t2.CategoryDate), t1.Schict, Count(t1.schict)
From Table1 t1
Inner join Table2 t2 On t1.Schict = t2.schict and t1.WeekNo = t2.weekNo
Group by t1.Category,DayName(t2.CategoryDate), t1.Schict
可以通过两个表格中的类别和缩略图来计算,但是您获得的记录数量取决于您记录的一周中的天数。
你可以在Sql中处理它,但是在PHP中填充数组客户端缺少的日子要容易得多。如果您使用mysql DayOfWeek,可能更容易 函数而不是DayName。
无论如何都有一些线索 也许更容易简单地添加这个日期,你不会告诉我们你当前查询的select子句,然后用PHP来获取这一天。