Como filtrar um grupo?

Olá a todos,

Estou tentando filtrar um grupo que criei chamado “Employees” nesta aba do explorador de dados. O que estou fazendo de errado? Como excluir um grupo que criei?:

    SELECT 
    sum(p.score) / count(p) as "average score per post", 
    count(p.id) as post_count, 
    p.user_id
FROM posts p
JOIN users u ON u.id = p.user_id
WHERE p.created_at >= CURRENT_DATE - INTERVAL '6 month'
  AND NOT u.admin
  AND NOT u.employees
  AND u.active
GROUP by user_id, u.views
HAVING count(p.id) > 10
ORDER BY sum(p.score) / count(p) DESC
LIMIT 20

A tabela users possui primary_group_id (inteiro), então você pode usá-la na sua consulta se “Funcionários” estiver definido como grupo principal para esses usuários. Caso contrário, acredito que você precisará fazer uma junção separada com a tabela groups. (Nota — não me recordo dos detalhes da estrutura da tabela de cabeça, mas a pequena ferramenta de busca à direita ao editar uma consulta do Data Explorer é super útil para isso!)

Para obter uma lista de usuários que exclua os membros de um grupo, você pode tentar algo como este. Isso excluirá os membros do grupo ‘employees’. Deve ser possível reescrever sua consulta para usar isso.

WITH group_users AS (
SELECT user_id
FROM group_users gu
JOIN groups g
ON g.id = gu.group_id
WHERE g.name = 'employees'
)

SELECT
u.id AS user_id
FROM users u
WHERE u.id NOT IN (SELECT * FROM group_users)
ORDER BY user_id