Você precisaria converter o horário em segundos, fazer a média e depois converter o resultado em horário para exibição.
Supondo que o seu campo seja TIME, ou seja, guarde apenas o horário, a sua consulta ficaria assim:
SELECT SEC_TO_TIME(AVG(TIME_TO_SEC(meu_campo_time))) as media FROM minha_tabela
Se o campo for data e hora, o processo fica um pouco mais complicado, teria que separar o horário da data e fazer a operação:
SELECT SEC_TO_TIME(AVG(TIME_TO_SEC(DATE_FORMAT(meu_campo_dataehora,'%H:%i:%s')))) as media FROM minha_tabela
Os exemplos acima são para o MySQL.
Para o SQL Server, a lógica é a mesma, mas os comandos são diferentes
Para separar a hora da data de um campo datetime
select CAST(meu_campo_dataehora AS TIME) from minha_tabela
Para calcular a media do campo:
SELECT CONVERT(varchar, DATEADD(ms, AVG(DATEDIFF(MINUTE,0,CAST(meu_campo_dataehora AS TIME))) * 1000, 0), 114) from minha_tabela