我希望查询我的销售表并获得不同收据编号的计数 按小时计算一周中的每一天
每个记录都有一个重复的收据编号,一个只是日期数据类型的字段中的datein,以及时间数据类型中的sepearte时间字段
这是我正在尝试使用的查询
select dayname(datein),dayofweek(datein),
if(hour(timein) between 9 and 11, count(distinct salenbr),0) as `9-11`,
if(hour(timein) between 11 and 13, count(distinct salenbr),0) as `11-13`,
if(hour(timein) between 13 and 15, count(distinct salenbr),0) as `13-15`,
if(hour(timein) between 15 and 17, count(distinct salenbr),0) as `15-17`,
if(hour(timein) between 17 and 19, count(distinct salenbr),0) as `17-19`,
if(hour(timein) between 19 and 21, count(distinct salenbr),0) as `19-21`
from carmanslive.allsales
where loccode = 'SF' and exitcode in ('64','65')
and deptname = 'Photofinishing'
and datein >= DATE_SUB(NOW(), INTERVAL 3 MONTH)
group by dayname(datein),dayofweek(datein)
order by dayofweek(datein)
但输出错误
<table caption="UnknownTable (7 rows)">
<thead>
<tr>
<th class="col0">dayname(datein)</th>
<th class="col1">dayofweek(datein)</th>
<th class="col2">9-11</th>
<th class="col3">11-13</th>
<th class="col4">13-15</th>
<th class="col5">15-17</th>
<th class="col6">17-19</th>
<th class="col7">19-21</th>
</tr>
</thead>
<tbody>
<tr>
<td class="col0">Sunday</td>
<td class="col1">1</td>
<td class="col2">0</td>
<td class="col3">118</td>
<td class="col4">0</td>
<td class="col5">0</td>
<td class="col6">0</td>
<td class="col7">0</td>
</tr>
<tr>
<td class="col0">Monday</td>
<td class="col1">2</td>
<td class="col2">0</td>
<td class="col3">0</td>
<td class="col4">360</td>
<td class="col5">360</td>
<td class="col6">0</td>
<td class="col7">0</td>
</tr>
<tr>
<td class="col0">Tuesday</td>
<td class="col1">3</td>
<td class="col2">0</td>
<td class="col3">390</td>
<td class="col4">0</td>
<td class="col5">0</td>
<td class="col6">0</td>
<td class="col7">0</td>
</tr>
<tr>
<td class="col0">Wednesday</td>
<td class="col1">4</td>
<td class="col2">480</td>
<td class="col3">0</td>
<td class="col4">0</td>
<td class="col5">0</td>
<td class="col6">0</td>
<td class="col7">0</td>
</tr>
<tr>
<td class="col0">Thursday</td>
<td class="col1">5</td>
<td class="col2">0</td>
<td class="col3">0</td>
<td class="col4">0</td>
<td class="col5">330</td>
<td class="col6">0</td>
<td class="col7">0</td>
</tr>
<tr>
<td class="col0">Friday</td>
<td class="col1">6</td>
<td class="col2">0</td>
<td class="col3">380</td>
<td class="col4">380</td>
<td class="col5">0</td>
<td class="col6">0</td>
<td class="col7">0</td>
</tr>
<tr>
<td class="col0">Saturday</td>
<td class="col1">7</td>
<td class="col2">0</td>
<td class="col3">0</td>
<td class="col4">368</td>
<td class="col5">0</td>
<td class="col6">0</td>
<td class="col7">0</td>
</tr>
</tbody>
</table>
每列都应该有数据,我已经确认数据存在。
答案 0 :(得分:0)
我认为你必须将聚合物放在你的if周围。类似的东西:
allowDeferredLocationUpdatesUntilTraveled()