[英]filter sql query for last 24 hours
我正在嘗試僅過濾過去24小時的一些結果。 我在“時間”列中有時間戳記,並提出了該時間戳記,但是它在過去的24小時中沒有進行過濾,它顯示了所有內容。
$last_day = "SELECT site_id, time, COUNT(*) AS site_num FROM url_visits WHERE time < DATE_SUB( NOW(), INTERVAL 24 HOUR) GROUP BY site_id ORDER by COUNT(*) DESC";
有誰知道我如何才能使該查詢在最近24小時內正常工作? 它僅適用於分組等,而並非最近24小時有效。 謝謝。
編輯:
這是最終工作的結果,也是我發現可以使用的唯一解決方案,以防任何人遇到此問題並希望做同樣的事情。
SELECT site_id, time, COUNT(*) AS site_num FROM url_visits WHERE time > UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 DAY)) GROUP BY site_id ORDER by COUNT(*) DESC
嘗試使用
time > DATE_SUB( NOW(), INTERVAL 24 HOUR)
而不是
time < DATE_SUB( NOW(), INTERVAL 24 HOUR)
$last_day = "SELECT site_id, time, COUNT(*) AS site_num FROM url_visits WHERE time > DATE_SUB( NOW(), INTERVAL 24 HOUR) GROUP BY site_id ORDER by COUNT(*) DESC";
更改了比較
將-置於24的前面。您想讓時間>現在-24小時。 不是+ 24小時。 DATE_SUB( NOW(), INTERVAL -24 HOUR)
。
或您需要將時間增加24小時,然后說<時間+ 24小時
這是我最終使用的東西,並且是唯一起作用的東西。 希望這對別人有幫助。
SELECT site_id, time, COUNT(*) AS site_num FROM url_visits WHERE time > UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 DAY)) GROUP BY site_id ORDER by COUNT(*) DESC
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.