Relatório do Painel - Sistema

Sim, a melhor maneira de adicionar isso seria adicionar uma seção à instrução WHERE na consulta, filtrando pelo title do tópico.

Por exemplo:

WHERE archetype = 'private_message'
  AND subtype = 'system_message'
  AND created_at BETWEEN :start_date AND :end_date
  AND title = 'Greetings!'

Encontraria todas as mensagens Greetings!.

Observe que algumas das mensagens do sistema não incluem um usuário real, portanto, remover a linha AND user_id > 0 pode ser necessário com esse tipo de consulta.

Você pode querer remover AND deleted_at IS NULL para ainda contar as mensagens de boas-vindas que os usuários podem excluir.

Você pode usar regex para corresponder a tópicos com um título semelhante.

Para corresponder a um tópico por título usando uma expressão regular (regex) no PostgreSQL, você pode usar o operador ~, que corresponde a uma expressão regular contra uma string. A estrutura da consulta seria assim:

SELECT *
FROM topics
WHERE title ~ 'YourRegexPatternHere'

Substitua 'YourRegexPatternHere' pelo padrão de regex real que você deseja corresponder ao campo title.

Por exemplo, se você estiver procurando por tópicos com títulos que contenham a palavra “Welcome” (ignorando maiúsculas e minúsculas), você poderia usar:

SELECT *
FROM topics
WHERE title ~* 'Welcome'

O operador ~* é usado para correspondência que ignora maiúsculas e minúsculas.