Olá, então eu criei uma consulta (na parte inferior) que exibe o tópico, a categoria, a contagem de votos de um tópico, se ele está fechado, quando foi criado e o usuário que o criou. Se mais informações forem necessárias, por favor, me avise.
Tenho alguns problemas e perguntas com os quais gostaria de ajuda ou orientação, já que sou novo em SQL.
Ao executar esta consulta, ela exibe o mesmo tópico centenas de vezes. Como posso corrigir isso?
Existe alguma maneira de obter e mostrar quando um tópico será fechado automaticamente?
Eu quero que apenas tópicos dentro de uma semana sejam exibidos. Mas o date_trunc que adicionei mostra alguns itens com um pouco mais de uma semana atrás?
SELECT
t.id as topic_id,
t.category_id,
dvc.votes_count,
t.closed,
t.created_at,
t.user_id
FROM topics t, discourse_voting_topic_vote_count dvc
WHERE t.closed = true
AND t.category_id = 20
AND dvc.votes_count >= 1
AND t.created_at <= date_trunc('week', current_date)::date
AND t.created_at >= date_trunc('week', current_date)::date - 7
Minha suposição sobre (3) é que se trata de um problema de fuso horário e/ou que se baseia no segundo em que você executa o script e deseja a meia-noite anterior ou seguinte. (Não tenho certeza de como corrigir nenhum deles de imediato).
Não sei se isso ajudará, mas você pode tentar
Para saber quando eles vão fechar, você precisaria adicionar algo à parte SELECT (que você pode inferir dos campos disponíveis) e mudar FROM como
FROM topics t, discourse_voting_topic_vote_count dvc, topic_timers tt