0
每次有人訪問我網站上的博客文章時,我都會將它記錄在表[blog_article_hits]中。每次訪問都有一行。我現在想要顯示過去14天內的趨勢文章列表,顯示文章標題,收到的點擊量或百分比。MySQL - 計數記錄並按照受歡迎順序顯示計數
例子:
This is a blog article 1,0732
This is another article 930
我嘗試:
SELECT
tre.article_id, COUNT(*) AS total_hits, art.title, art.description,
pho.photo_id
FROM blog_article_stats tre
LEFT JOIN blog_articles AS art ON tre.article_id = art.article_id
LEFT JOIN blog_photos AS pho ON art.article_id = pho.article_id
WHERE tre.d_time BETWEEN DATE_SUB(Now(), INTERVAL 14 DAY) AND Now()
AND pho.status = 'Published' AND art.status = 'Published'
GROUP BY tre.article_id
ORDER BY total_hits DESC LIMIT 5
這是非常接近,但不完全正確。最受歡迎的文章按正確的順序列出,但每個標題旁邊的計數不正確。它實際上顯示了每篇文章有多少張照片,而不是多少次被訪問過。我認爲通過讓GROUP BY有所幫助,我甚至嘗試在[pho.article_id]上添加次要的GROUP子句,但這沒有幫助。
我選擇[pho.photo_id]和加盟[pho.blog_photos],純粹是因爲我想告訴一張照片並排列出的結果。
任何人都可以告訴我如何解決這個問題?
非常感謝。
謝謝ypercube,工作過。 – ShadowStorm