Я пытаюсь написать оператор IIF, чтобы вернуться к определенным должностям в моем запросе.
Однако, когда я запускал свой код, этот столбец даже не возвращался в созданную мной таблицу. Я посмотрел в Интернете, и кажется, что это правильный синтаксис. Я что-то упустил, из-за чего он не возвращает этот столбец?
IIF ([w.Job_Title] = "Sales Pro" OR [w.Job_Title] = "Services Pro" OR [w.Job_Title] = "Universal Pro" OR [w.Job_Title] = "Fulfillment Pro", "JobTitle", NULL),
Первоначально у меня был оператор WHERE в конце моего запроса, но это, похоже, привело к тому, что мои другие данные были неточными, поэтому я подумал, что этот способ IIF будет лучше.
Ниже приведен полный запрос:
SELECT cal.FiscalYear,
cal.FiscalQuarter,
cal.FiscalMonth,
cal.FiscalWeekNumber,
Format(w.Day, "Dddd") AS DayOfWeek,
cal.Day AS CalendarDay,
w.Day,
c.SegStart,
c.SPLITNAME AS SkillName,
w.Site,
w.Campaign,
w.Manager,
w.Supervisor,
IIF ([w.Job_Title] = "Sales Pro"
OR [w.Job_Title] = "Services Pro"
OR [w.Job_Title] = "Universal Pro"
OR [w.Job_Title] = "Fulfillment Pro", "JobTitle", NULL),
w.EmployeeNumber AS SalesID,
w.ACDID,
c.CallID,
w.Employee,
c.Caller_Name AS cms_EmployeeName,
c.Answerer_Name AS cms_ProEmployeeName,
c.Answered,
c.AcwTime,
c.Agt_Released AS AgentReleased,
c.AnsHoldTime,
c.AnsLogin,
c.Calling_Pty AS CallingParty,
c.Conference,
c.ConsultTime,
c.Dialed_Num AS DialedNumber,
c.DispIVector,
c.DispSplit,
c.DispVDN,
c.Duration,
c.Disposition,
c.Held,
c.HoldABN AS AbanOnHold,
c.OrigLogin,
c.QueueTime,
c.RingTime,
c.TalkTime,
c.Transferred,
c.VDN2,
c.VDN3,
c.VDN4,
c.VDN5
FROM (t_wfm AS w
INNER JOIN t_cms AS c ON (c.CALLING_PTY = w.ACDID)
AND (Format(c.SEGSTART, "Short date") = Format(w.[Day], "Short date")))
INNER JOIN tbl_Calendar AS cal ON cal.Day = w.Day;