Hola,
No sé cuanto entendí del enunciado, y a pesar de que el SQL no va del todo conmigo esto es lo que se me ocurrió:
Código SQL
[-]
SELECT
ART.ID_GRUPO, GRP.NOMBRE, ART.NOMBRE, GRP.DESGLOSA
FROM ARTICULOS ART
JOIN ART_GRUPO GRP ON GRP.ID = ART.ID_GRUPO
WHERE GRP.DESGLOSA = 1
UNION
SELECT
ART.ID_GRUPO, GRP.NOMBRE, CAST('' AS VARCHAR(30)), GRP.DESGLOSA
FROM ARTICULOS ART
JOIN ART_GRUPO GRP ON GRP.ID = ART.ID_GRUPO
WHERE GRP.DESGLOSA = 0
GROUP BY
ART.ID_GRUPO, GRP.NOMBRE, GRP.DESGLOSA