Discrepanza nei conteggi dei post degli utenti

Sto cercando di capire una potenziale discrepanza nei dati che ho notato. Ho eseguito alcune query con il plugin Data Explorer per ottenere statistiche sugli utenti che pubblicano più frequentemente. Una delle query che ho utilizzato è la seguente:

select u.username, us.post_count
from users u
join user_stats us
on u.id = us.user_id
order by us.post_count desc

Questa restituiva, ad esempio, 100 post per un determinato utente. Poi ho deciso di riscrivere la query in modo leggermente diverso:

select u.username, count(distinct p.id)
from users u
join posts p
on u.id = p.user_id
group by u.username
order by count(distinct p.id) desc

Questa query per lo stesso utente ha restituito 135 post. Sembra che questo sia il numero corretto, dato che conta effettivamente ogni singolo post dalla tabella posts, invece di affidarsi al campo post_count di user_stats.

Quindi sto cercando di capire perché ci sia questa discrepanza. Si tratta di un utente non amministratore e non moderatore, quindi non ci sono una serie di azioni amministrative che potrebbero apparire come post. Qualche idea su cosa potrebbe causare questo problema?

Ciao Holly, i post nella tabella includeranno anche i messaggi privati e i post eliminati. Forse user_stats.post_count include solo i post non eliminati, e non i messaggi privati e i post eliminati? Qualcuno con più conoscenze potrà sperare di rispondere.

4 Mi Piace

Sì, è esattamente così @JusticeUK

2 Mi Piace

Grazie per le informazioni. Tuttavia, questo utente non ha post cancellati (ho controllato due volte il suo profilo e ho aggiunto p.deleted_at is null alla mia query precedente, ma vedo ancora gli stessi numeri. Il nostro forum ha anche i messaggi privati disabilitati, quindi non credo che questi stiano influenzando i numeri.

Quando guardo i post di questo utente, sono tutti post_type = 1. Non so ancora esattamente cosa significhi un post_type di 1, ma tutti i suoi sembrano essere semplicemente post normali.