Tenho uma consulta que retorna uma tabela de técnicos e o número de ordens de serviço que eles preencheram. O problema é que às vezes os técnicos são inseridos usando seu nome completo e às vezes são inseridos usando seu ID de usuário. Eu quero que esta tabela use nomes completos e combine registros onde o userID é usado com registros correspondentes ao seu nome completo. UserID vem como 'FirstInitial' + 'LastName'
ou '$FirstName' + '$LastInitial'
, onde + é a concatenação de strings
Exemplo da minha tabela:
Maddoc 74 - 229
M74 - 21
Maddoc7 - 14
John Smith - 215
jsmith - 47
johns - 19
Anna Kellog - 251
akellog - 67
annak - 14
Como eu quero que fique:
Maddoc 74 - 264
John Smith - 281
Anna Kellog - 332
Aqui está minha consulta atual:
SELECT "RESPONDEDBY" AS Technician, COUNT("RESPONDEDBY") AS Tickets
FROM TRACKIT_DATA2.TrackItApp_1.vTASKS_BROWSE
WHERE DATEPART(m,"CLSDDATE") = DATEPART(m, {?reportingDate})
AND DATEPART(yyyy,"CLSDDATE") = DATEPART(yyyy, {?reportingDate})
AND "RESPONDEDBY" NOT IN (SELECT "RESPONDEDBY" FROM TRACKIT_DATA2.TrackItApp_1.vTASKS_BROWSE WHERE "RESPONDEDBY" = 'EmailMonitor')
GROUP BY "RESPONDEDBY"
ORDER BY COUNT("RESPONDEDBY") DESC
esta consulta obterá os resultados desejados para o seu exemplo
Você terá problemas se também tiver uma Jane Smith, John Sanders, etc. isso também não leva em consideração os nomes do meio no nome completo