Buenos días CrepuX:
Hay varios detalles que hay que corregir en lo que estás intentando hacer:
Primero en la consulta, al poner esto SUM(Usuario) lo que estaría intentando hacer es sumar Javi + Ana + Juan. Al no ser NUMEROS entonces ocurre el error que mencionas.
Lo que tú necesitas hacer es CONTAR los registros SIN AGRUPAR, es decir simplemente tienes que hacer esto:
NOTA: No mencionas qué manejador de base de datos estás utilizando, pero la mayoría utiliza el formato de fecha ANSI (yyyymmdd), por lo que sería conveniente que trataras de utilizar esto, pero si tu consulta funciona pues adelante.
Ahora bien, para poder hacer un UNION las dos consultas que quieras juntar DEBEN TENER EL MISMO NÚMERO DE CAMPOS y DEL MISMO TIPO. La primer consulta que tienes para obtener el desglose te está regresando tres columnas:
Por lo tanto la consulta para obtener el total también de debe regresar tres campos. la consulta quedaría más o menos así
Código SQL:
Ver originalSELECT DISTINCT Tipo, COUNT(Usuario) AS TOTAL, Usuario
FROM Incidencias
WHERE (Fecha BETWEEN '27/12/2010' AND '05/01/2011')
GROUP BY Usuario, Tipo
UNION
SELECT 'Total:' AS Tipo, COUNT(*) AS TOTAL, NULL AS Usuario
FROM Incidencias
WHERE (Fecha BETWEEN '27/12/2010' AND '05/01/2011')
Esta consulta te regresaría lo siguiente:
Código:
Tipo|TOTAL|Usuario
------------------------------
ANIMALES|2|Javi
COMERCIO|1|Ana
COMERCIO|1|Juan
SONOMETRIA|1|Ana
SONOMETRIA|1|Javi
SONOMETRIA|1|Juan
SEGURIDAD|2|Ana
TOTAL:|9|null
Saludos
Leo.