SQLite - Agrupar columnas combinadas en tablas

SQLite - Agrupar columnas combinadas en tablas

Estoy intentando escribir un informe SQL personalizado y estoy muy cerca. Simplemente no puedo entender la última parte.

Básicamente, el informe terminará mostrando software no aprobado. A continuación se muestra mi código casi funcional. Estoy tratando de poner todas las computadoras y usuarios en 1 campo. Puedo hacer que esto funcione solo, pero no estoy seguro de cómo agruparlo correctamente. Esto es lo que tengo:

select
    Applications.Name 'Application',
    Applications.Version 'Version',
    count(Computers.Name) 'Count',
    Applications.Uninstall 'Uninstall String',
    case
        WHEN Computers.CurrentUser = '' THEN group_concat(Computers.Name, ', ')
        ELSE Computers.Name || ' (' || Computers.CurrentUser || '), '
    END AS 'Computer/Users'
FROM Computers inner join Applications on Computers.ComputerID=Applications.ComputerID
where Applications.Name LIKE '%McAfee%'
group by Applications.Name

Creo que mi problema es con ELSE Computers.Name || ' (' || Computers.CurrentUser || '), ' pero no estoy seguro de cómo agrupar_concat, o algo más.

Resulta:

+------------------------------------------+-------------+-------+------------------------------------------------------------------------+------------------------------------------------+
|              "McAfee Agent"              | "5.0.5.658" | "334" | "MsiExec.exe /qn /norestart /X{265FA622-A254-49fb-B380-D9EF9ABFD32D}"  | "Computer1, Computer2, Computer3, Computer4, " |
+------------------------------------------+-------------+-------+------------------------------------------------------------------------+------------------------------------------------+
| "McAfee Host Intrusion Prevention"       | "8.00.0000" | "129" | "MsiExec.exe /qn /norestart /X{D2B9C003-A3CD-44A0-9DE5-52FE986C03E5}"  | "Computer1 (Computer1\User1), "                |
| "McAfee Management of Native Encryption" | "4.0.0.84"  | "9"   | ""                                                                     | "Computer27 (DOMAIN\Userasdasd), "             |
| "McAfee VirusScan Enterprise"            | "8.8.09000" | "334" | "MsiExec.exe /qn /norestart /X{CE15D1B6-19B6-4D4D-8F43-CF5D2C3356FF}"  | "Computer1, Computer2, Computer3, Computer4, " |
+------------------------------------------+-------------+-------+------------------------------------------------------------------------+------------------------------------------------+

Espero obtener Computadora1 (Usuario), Computadora2 (Usuario2), etc... Corté la lista de computadoras porque es enorme.

Mostrar la mejor respuesta
Avatar CL.
Respuesta aceptada

group_concat() se aplica a lo que le des como parámetro.

Si desea tener los valores de "Computadora (Usuario)" concatenados, debe escribirlos dentro del group_concat():

group_concat(CASE WHEN Computers.CurrentUser = ''
                  THEN Computers.Name
                  ELSE Computers.Name || ' (' || Computers.CurrentUser || ')'
             END,
             ', ')