¿Es mi impresión, o has estado realmente dandole vueltas al problema de los duplicados desde hace tiempo?
Bueno, en principio la cosa no es muy difícil, aunque sin ver los datos de tus tablas debemos suponer algunas cosas.
Toda la solución se basa en dos premisas:
1) No deben mostrarse aquellos registros donde uno o más campos predeterminados se repitan entre dos o más registros.
2) Deben mostrarse aquellos registros donde los valores entre dos campos predeterminados sean diferentes.
La solución es simplemente resolver aquellas consultas donde SI SE CUMPLAN esas premisas, para usarlo a fin de EXCLUIR los casos donde se cumple.
¿Se entiende?
Suponiendo que los cuatro campos mencionados en el SELECT pueden duplciarse en diferentes registros, para que se muestren esos, debería cumplirse que:
Código MySQL:
Ver originalSELECT `usuarios`, `rut`, `nombreusuario`, `grupo`, `id_cargo_funcional` GROUP BY `usuarios`, `rut`, `nombreusuario`, `grupo`, `id_cargo_funcional`
Para que se se cumpla la segunda premisa, ya tienes tu misma la solcucioón:
Código MySQL:
Ver originalSELECT `usuarios` , `rut` , `nombreusuario` , `grupo` , `id_cargo_funcional` WHERE grupo
<> id_cargo_funcional
Para integrar eso, sería simplemente:
Código MySQL:
Ver originalSELECT `usuarios`, `rut` , `nombreusuario`, `grupo` , `id_cargo_funcional` WHERE grupo
<> id_cargo_funcional
AND (`usuarios`, `rut` , `nombreusuario`, `grupo` , `id_cargo_funcional` ) NOT IN (SELECT `usuarios`, `rut`, `nombreusuario`, `grupo`, `id_cargo_funcional` GROUP BY `usuarios`, `rut`, `nombreusuario`, `grupo`, `id_cargo_funcional`
Ahora bien, hay al menos una cosa que debe quedar claro: Para lo que es BBDD, existe duplicidad de registros sí y sólo si todos los campos entre dos registros cualesquiera tienen exactamente los mismos valores, en el mismo orden y para los mismos campos.
Cualquier otra cosa no es duplicidad.
Esto lo remarco, porque para BBDD, esto NO es duplicidad:
Cita: 1 2 3 4 5 6 7 8 9
1 2 3 3 5 6 7 8 9
¿Estamos de acuerdo?
Si lo que te planteo no es lo que tu estás buscando necesitaremos que nos postees un caso de ejemplo de a qué "duplicidad" te estás refiriendo, con un caso real de tu base.