簡體   English   中英

SQL select 過去 24 小時內的熱門標簽

[英]SQL select the top hashtags in the last 24 hour

這是我的查詢

SELECT *
FROM posts
WHERE description like concat('%', :hashtag, '%')
ORDER BY STR_TO_DATE(time,'%d-%m-%Y %H:%i:%s') ASC

我想selecttime過去 24 小時內posts熱門主題標簽

PHP 時間格式STR_TO_DATE(time,'%d-%m-%Y %H:%i:%s')

例子

SELECT * FROM posts WHERE time >= NOW() - INTERVAL 1 DAY GROUP BY description HAVING like concat('%', :hashtag, '%')

要獲得帶有一個主題標簽的帖子數量,您需要一個GROUP BY才能對它們進行COUNT 另一方面,按時間排序完全沒有意義。

它看起來像這樣:

SELECT COUNT(*) as hashtag_count,hashtag FROM posts WHERE time >= NOW() - INTERVAL 1 DAY GROUP BY hashtag ORDER BY hashtag_count

您可以添加一個LIMIT x進行查詢。

為確保在特定日期內設置所有“主題標簽”,您也可以在日期上添加 +,- 日。

至於排名靠前的結果,有沒有給他們打分之類的東西?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM