Php 将select语句与日期组合
请帮助我,我希望我的SQL Select语句组合在一个查询中Php 将select语句与日期组合,php,sql,database,Php,Sql,Database,请帮助我,我希望我的SQL Select语句组合在一个查询中 <?php Total Assigned = SELECT date(DATE_DISTRIBUTE) , COUNT(DATE_DISTRIBUTE) AS TotalAssigned FROM ata_report_extracted WHERE STATUS ='DISTRIBUTED' GROUP BY date(DATE_DISTRIBUTE) "; Total Handled = "SELECT
<?php
Total Assigned = SELECT date(DATE_DISTRIBUTE)
, COUNT(DATE_DISTRIBUTE) AS TotalAssigned
FROM ata_report_extracted WHERE STATUS ='DISTRIBUTED'
GROUP BY date(DATE_DISTRIBUTE) ";
Total Handled = "SELECT date(DATE_HANDLED)
, COUNT(DATE_HANDLED) AS TotalHandled
FROM ata_report_extracted WHERE PROS_DESCRIPTION NOT IN ('Open', 'Acknowledged', 'Fallout', 'Cleared') AND STATUS ='DISTRIBUTED'
GROUP BY date(DATE_HANDLED) ";
Total Resolved ="SELECT date(DATE_HANDLED)
, COUNT(DATE_HANDLED) AS TotalResolved
FROM ata_report_extracted WHERE PROS_DESCRIPTION = 'Closed' AND STATUS ='DISTRIBUTED'
GROUP BY date(DATE_HANDLED) ";
TotalDispatch ="SELECT date(DATE_HANDLED)
, COUNT(DATE_HANDLED) AS TotalDispatch
FROM ata_report_extracted WHERE PROS_DESCRIPTION ='Dispatch' AND STATUS ='DISTRIBUTED'
GROUP BY date(DATE_HANDLED) ";
TotalPending ="SELECT date(DATE_HANDLED)
, COUNT(DATE_HANDLED) AS TotalPending
FROM ata_report_extracted WHERE PROS_DESCRIPTION IN ('TOKUNDEROB', 'CALLNOANSWER') AND STATUS ='DISTRIBUTED'
GROUP BY date(DATE_HANDLED) ";
?>
<?php
Total Assigned = SELECT date(DATE_DISTRIBUTE)
, COUNT(DATE_DISTRIBUTE) AS TotalAssigned
FROM ata_report_extracted WHERE STATUS ='DISTRIBUTED'
GROUP BY date(DATE_DISTRIBUTE) ";
Total Handled = "SELECT date(DATE_HANDLED)
, COUNT(DATE_HANDLED) AS TotalHandled
FROM ata_report_extracted WHERE PROS_DESCRIPTION NOT IN ('Open', 'Acknowledged', 'Fallout', 'Cleared') AND STATUS ='DISTRIBUTED'
GROUP BY date(DATE_HANDLED) ";
Total Resolved ="SELECT date(DATE_HANDLED)
, COUNT(DATE_HANDLED) AS TotalResolved
FROM ata_report_extracted WHERE PROS_DESCRIPTION = 'Closed' AND STATUS ='DISTRIBUTED'
GROUP BY date(DATE_HANDLED) ";
TotalDispatch ="SELECT date(DATE_HANDLED)
, COUNT(DATE_HANDLED) AS TotalDispatch
FROM ata_report_extracted WHERE PROS_DESCRIPTION ='Dispatch' AND STATUS ='DISTRIBUTED'
GROUP BY date(DATE_HANDLED) ";
TotalPending ="SELECT date(DATE_HANDLED)
, COUNT(DATE_HANDLED) AS TotalPending
FROM ata_report_extracted WHERE PROS_DESCRIPTION IN ('TOKUNDEROB', 'CALLNOANSWER') AND STATUS ='DISTRIBUTED'
GROUP BY date(DATE_HANDLED) ";
?>
注释中解释的所有要求都包含在以下查询中。我使用了完全联接,因此如果一个查询中有一个日期可用,而另一个查询中没有,那么输出中也会出现该日期
SELECT
CASE
WHEN A.Date_Han_Dst IS NULL THEN B.Date_Han_Dst
ELSE A.Date_Han_Dst
END AS [Date_Han_Dst],
A.TotalHandled,
A.TotalResolved,
A.TotalDispatch,
A.TotalPending,
B.TotalAssigned
FROM
(
SELECT date(DATE_HANDLED) AS [Date_Han_Dst],
SUM(CASE WHEN PROS_DESCRIPTION NOT IN ('Open', 'Acknowledged', 'Fallout', 'Cleared') AND STATUS ='DISTRIBUTED' THEN 1 ELSE 0 END) AS TotalHandled,
SUM(CASE WHEN PROS_DESCRIPTION = 'Closed' AND STATUS ='DISTRIBUTED' THEN 1 ELSE 0 END) AS TotalResolved,
SUM(CASE WHEN PROS_DESCRIPTION ='Dispatch' AND STATUS ='DISTRIBUTED' THEN 1 ELSE 0 END) AS TotalDispatch,
SUM(CASE WHEN PROS_DESCRIPTION IN ('TOKUNDEROB', 'CALLNOANSWER') AND STATUS ='DISTRIBUTED' THEN 1 ELSE 0 END) AS TotalPending
FROM ata_report_extracted GROUP BY date(DATE_HANDLED)
)A
FULL JOIN
(
SELECT date(DATE_DISTRIBUTE) AS [Date_Han_Dst],
SUM(CASE WHEN STATUS ='DISTRIBUTED' THEN 1 ELSE 0 END) TotalAssigned
FROM ata_report_extracted GROUP BY date(DATE_DISTRIBUTE)
)B
ON A.Date_Han_Dst = B.Date_Han_Dst
你想要什么,“每日总报告”的定义是什么?日期总计分配总计已处理总计已解决总计调度2019年5月16日1 0 0 0 0 2017年5月5日2 1 0我希望结果如下:)使用该信息编辑您的问题,而不是发布将其作为评论,并确保其易于理解。评论不用于扩展讨论;这段对话已经结束。