Sul mio sito web, ho tre grandi sezioni: una sezione in cui le persone possono iniziare le discussioni, una sezione in cui possono condividere storie e un blog con articoli che scrivo da solo. Ho creato un sistema di tagging personalizzato utilizzando la struttura del database sottostante.Come ottenere i tag più popolari in generale dalle tabelle normalizzate?
Nel mio tavolo tags_xref avevo bisogno di avere 3 colonne diverse per ogni tipo di messaggio, perché una discussione può avere lo stesso ID come una storia o un articolo.
Tutto sta funzionando esattamente come dovrebbe, ma ho problemi con le query per mostrare determinati tag. So già come per mostrare i tag più popolari nella sezione di discussione:
"SELECT t.id, t.tag, COUNT(discussion_id) AS cnt
FROM tags_xref AS xrf
INNER JOIN tags AS t ON xrf.tag_id = t.id
GROUP BY t.id, t.tag
ORDER BY COUNT(discussion_id) DESC LIMIT 20"
Ora voglio mostrare i tag più popolari su tutto il sito, quindi dalle discussioni, racconti e articoli. C'è qualcuno che può aiutarmi con questo? Ho lavorato su questo per ore e non riesco a trovare una soluzione .. Grazie!
potresti fornire tutte le query di creazione tabella qui con dati di esempio? –