0

我有 2 张桌子。表 1 是 tbl_DaysWeeksMonths,其中每个日期都有一行,它是相应的周结束日期和日历月。表 2 是 tbl_CallStats,它显示每个座席每天的一条记录及其相应的呼叫计数和统计信息等。并非所有顾问都有一周中每一天的记录。

左侧是表 1 (tbl_DaysWeeksMonths),其中包含 Date、Week Ending、Month 列。右侧是表 2 (tbl_CallStats),其中包含 row_date、agent、logid、total call、通话时间等列。

我想将 tbl_CallStats 链接到 tbl_DaysWeeksMonths 以便为每个代理(基于 tbl_DaysWeeksMonths)显示日期记录,即使他们在特定日期没有接听电话。

我尝试进行左连接,但它仍然只显示通话天数的记录。我觉得我在这里错过了一些简单的东西。请帮忙。

SELECT Date,[Week Ending],tbl_CallStats.agent
FROM tbl_DaysWeeksMonths
LEFT JOIN tbl_CallStats
ON tbl_DaysWeeksMonths.Date = tbl_CallStats.row_date
GROUP BY Date, Week, agent
4

1 回答 1

0

此查询获取所有天数,并应显示 tbl_CallStats 中的所有代理呼叫。这考虑到每天和代理在 tbl_CallStats 中总会有一行。

"select tbl_DaysWeeksMonths.Date, tbl_DaysWeeksMonths.WeekEnding, tbl_DaysWeeksMonths.Month, 
tbl_CallStats.agent, tbl_CallStats.logid, tbl_CallStats.totalcalls, tbl_CallStats.talktime
from tbl_DaysWeeksMonths
left join tbl_CallStats on tbl_CallStats.row_date = tbl_DaysWeeksMonths.Date
group by tbl_CallStats.agent, tbl_DaysWeeksMonths.Date "

如果您在没有呼叫时只是在 tbl_CallStats 中没有记录,那么您可以为代理提供另一个表并获取与它们相关的值,例如,选择每天加入所有代理的所有日期,然后将连接留给 callstats。 ..

于 2012-06-04T15:26:51.710 回答