【发布时间】:2018-09-11 10:56:16
【问题描述】:
我正在跟踪orders表中存在的所有员工数据....
我需要获取所有员工 [ 列名 : employeename] 重新尝试 [ 列 : reattemptdate ] 并保留值 [ 列 : holddate ]
我想以以下格式显示该信息:
员工姓名1:重试:重试值:保留:保留值
员工姓名2:重试:重试值:保留:保留值
示例:
chittaranjan : 重复 : 20 , 保持 : 10
Deepak 重试次数:15,保持:5
我尝试了以下查询:
$sql = "SELECT employeename, DATE(reattemptdate) as date,
COUNT(*) as count, 0 as Held FROM orders
WHERE DATE(reattemptdate) = CURDATE()
GROUP BY employeename, date
UNION
SELECT employeename, DATE(holddate) as date,
COUNT(*) as count, 1 as Held FROM orders
WHERE DATE(holddate) = CURDATE()
GROUP BY employeename, date
";
$results = $db_handle->runSelectQuery($sql);
$numrowsresult =$results[0]['count'];
foreach ($results as $result)
{
if ($result['Held']==0){
$header = " Reattempet ";
} else {
$header = " hold ";
}
echo $result['employeename']."<br>";
echo $header.": ".$result['count']."<br>";
}
我得到如下输出:
chittaranjan Reatttempet : 20
deepak 重试次数:15
chittaranjan 举行:10
深度保持:5
我需要对上述查询进行哪些更改才能获得所需的结果......
编辑 - 列结构:
保持:
示范
【问题讨论】:
-
能不能显示你正在使用的表格格式
-
如果您只有 0 或 1 个用于保存的列,您如何获得 10 或 5 ? .. 以及您正在使用哪个数据库?..(您在 select 中有一列未聚合且未在 group by 中)
-
见:meta.stackoverflow.com/questions/271055/…。并编辑您的问题,在标签中添加您正在使用的数据库。
-
@Krishanu 请查看prnt.sc/kt0fsx 和prnt.sc/kt0eug,如果您需要更多详细信息,请告诉我......
-
@vickeycolors 。我读过你之前的评论。但无论如何我无法理解你的目标......而且我没有建议尝试更好地理解