首頁 > 資料庫 > mysql教程 > 當我的查詢特別要求取得過去七天的資料時,為什麼我只能取得過去五天的資料?

當我的查詢特別要求取得過去七天的資料時,為什麼我只能取得過去五天的資料?

DDD
發布: 2024-10-29 06:38:02
原創
225 人瀏覽過

Why am I only getting data from the last five days when my query specifically asks for the last seven?

擷取最近 7 天的資料效率

將資料從 SQL Server 傳送到 MySQL 時,必須僅過濾掉相關資料。在這種情況下,提取最近 7 天的數據至關重要。然而,提供的 SQL 查詢產生了意外結果。

問題:缺少資料

使用 GETDATE()-7 和 GETDATE() 過濾資料的查詢僅檢索到五天的資料結果。這種差異需要探索。

解決方案:正確的日期計算

對於 SQL Server,GETDATE() 傳回目前日期和時間。但是,計算 7 天前需要進行調整以考慮時區和夏令時。為了解決這個問題,使用了 DATEADD(day,-7, GETDATE())。 DATEADD() 在目前日期上新增指定的天數(在本例中為 -7),確保準確擷取最近 7 個完整天的資料。

因此,更正後的查詢應為:

<code class="sql">SELECT id, NewsHeadline as news_headline, NewsText as news_text, state CreatedDate as created_on
FROM News
WHERE CreatedDate >= DATEADD(day,-7, GETDATE())</code>
登入後複製

此修改後的查詢將有效捕獲所需的 7 天資料並解決先前遇到的差異。

以上是當我的查詢特別要求取得過去七天的資料時,為什麼我只能取得過去五天的資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板