簡體   English   中英

年/月/周至今 SQL 查詢

[英]Year/Month/Week to date SQL query

我目前正在開發一個平台,我需要 3 個 SQL 查詢來返回迄今為止年/月/周之間的所有記錄。

查詢必須在沒有硬編碼日期的情況下動態工作,如果我應該將它們分成 3 個問題,請耐心等待,我認為它們非常相關,這就是我將所有 3 個問題都放在這里的原因:)

1:年初至今

我根據這個關於Year To Date的問題嘗試了這個SQL查詢,但我收到一個錯誤:

調用本機函數“DATEDIFF”時的參數計數不正確

SELECT coins_daily_date, coins_daily_high, coins_daily_low, coins_daily_close, coins_daily_volume
FROM coins_daily
WHERE coins_daily_date BETWEEN DATEADD(yy, DATEDIFF(yy,0,GETDATE()), 0) AND GETDATE()
ORDER BY coins_daily_date ASC

2:本月至今

我用月函數嘗試了不同的東西,但無法弄清楚如何實現/構建正確的月至今日 SQL 查詢。

3:本周至今

老實說,我不知道從哪里開始,這個。

工作正常回到 1 年

SELECT coins_daily_date, coins_daily_high, coins_daily_low, coins_daily_close, coins_daily_volume
FROM coins_daily
WHERE coins_daily_date >= DATE_ADD(NOW(),INTERVAL -1 YEAR
ORDER BY coins_daily_date ASC

我希望有人可以幫助或指出我正確的方向:)

此致!

GETDATE() 用於 MsSQL。 使用 NOW() 表示當前日期時間或 curdate() 表示當前日期。

年初至今:

SELECT coins_daily_date, coins_daily_high, coins_daily_low, coins_daily_close, 
coins_daily_volume
FROM coins_daily
WHERE YEAR(coins_daily_date) = YEAR(NOW())
AND coins_daily_date <= NOW()
ORDER BY coins_daily_date ASC

對於本月至今:

SELECT coins_daily_date, coins_daily_high, coins_daily_low, coins_daily_close, 
coins_daily_volume
FROM coins_daily
WHERE YEAR(coins_daily_date) = YEAR(NOW())
AND MONTH(coins_daily_date) = MONTH(NOW())
AND coins_daily_date <= NOW()
ORDER BY coins_daily_date ASC

對於本周至今:

SELECT coins_daily_date, coins_daily_high, coins_daily_low, coins_daily_close, 
coins_daily_volume
FROM coins_daily
WHERE YEAR(coins_daily_date) = YEAR(NOW())
AND WEEK(coins_daily_date) = WEEK(NOW())
AND coins_daily_date <= NOW()
ORDER BY coins_daily_date ASC

暫無
暫無

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

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