Ho un database SQL di Discourse. Devo trovare le statistiche degli utenti per un determinato timestamp.
Ad esempio: devo scoprire quanti post ha pubblicato un utente?
Se estraggo quei dati da user_stats, ottengo un numero che va dall’iscrizione al forum fino a ora, ma ho bisogno di trovare i dati per un periodo specifico.
Hai qualche idea?
Ma cosa succede se voglio specificare un orario preciso invece che solo i giorni, ad esempio se voglio cercare tra il 2020-2-2 00:00:00 e il 2020-3-1 00:00:00?
Il conteggio visualizzato nell’interfaccia si riferisce solo ai post pubblici e non cancellati. Il conteggio nel database include tutti i post, compresi quelli cancellati, i messaggi privati e le categorie private.
Dovrai applicare filtri simili. Qualcosa del genere:
SELECT count(*) FROM posts p
JOIN topics t ON t.id = p.topic_id
WHERE p.user_id=23968
AND p.deleted_at IS NULL
AND NOT COALESCE(p.hidden, 't')
AND p.post_type = 1
AND t.deleted_at IS NULL
AND COALESCE(t.visible, 't')
AND t.archetype <> 'private_message'
AND p.user_id > 0
AND p.post_number > 1