亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

選擇日期范圍,最近 30 天

選擇日期范圍,最近 30 天

胡說叔叔 2024-01-16 15:21:47
我試圖僅返回最近 30 天的查詢,但沒有成功。我嘗試將其簡化為僅拉取任何內容 > 12/31/2019 仍然沒有成功。sql_string = ('''SELECT ViewListInvoices.Department,             ViewListInvoices.[Invoice Date]            FROM ViewListInvoices            WHERE (((ViewListInvoices.[Invoice Date] > (12/31/2019))            ))''')    sql_result = query(sql_string)    shop_average_inv_last_month = sorted(sql_result)    sql_result =[]我已經嘗試過> ('12/31/2019')或者('#12/31/2019')還有很多其他的。在此先感謝您的幫助
查看完整描述

3 回答

?
人到中年有點甜

TA貢獻1895條經驗 獲得超7個贊

對日期常量使用正確的語法:

ViewListInvoices.[Invoice Date] > '20191231'


查看完整回答
反對 回復 2024-01-16
?
慕的地10843

TA貢獻1785條經驗 獲得超8個贊

使用該DATEFROMPARTS函數創建日期文字

我喜歡使用DATEFROMPARTS函數在 TSQL 中創建日期文字。這確實需要 SQL Server 2012 或更高版本(這對大多數人來說應該不是問題)。

雖然輸入此函數可能需要一兩秒的時間,但一旦輸入,我發現代碼更具可讀性,而且我不必擔心語言和日期格式設置。

您的作業應如下所示(我刪除了很多括號):

sql_string?=?('''SELECT?ViewListInvoices.Department,?
????????????ViewListInvoices.[Invoice?Date]
????????????FROM?ViewListInvoices
????????????WHERE?ViewListInvoices.[Invoice?Date]?>?DATEFROMPARTS(2019,12,31)?
????????????''')

有些人喜歡依賴字符串的隱式轉換,就像 Gordon 演示的那樣(在 TSQL 中很常見)。

我也看到有些人使用CAST函數(尤其是 2012 年之前的 SQL Sever)。

sql_string?=?('''SELECT?ViewListInvoices.Department,?
????????????ViewListInvoices.[Invoice?Date]
????????????FROM?ViewListInvoices
????????????WHERE?ViewListInvoices.[Invoice?Date]?>??CAST(''20191231''?AS?DATE)''')



查看完整回答
反對 回復 2024-01-16
?
catspeake

TA貢獻1111條經驗 獲得超0個贊

假設您想要從上次發票日期算起的最后 30 天,請使用 max 子查詢和 dateadd


 SELECT ViewListInvoices.Department, 

        ViewListInvoices.[Invoice Date]

        FROM ViewListInvoices

        where ViewListInvoices.[Invoice Date]>=

        DateAdd(d,-30,

        (

        SELECT max(ViewListInvoices.[Invoice Date]) max_date

        FROM ViewListInvoices invoice2

        ))

或者,如果您希望所有大于 12/31/2019 的日期使用一個字符串,它將自動轉換為強制轉換('12/31/2019' as date)


  SELECT ViewListInvoices.Department, 

        ViewListInvoices.[Invoice Date]

        FROM ViewListInvoices

        where ViewListInvoices.[Invoice Date]>= '12/31/2019' 


查看完整回答
反對 回復 2024-01-16
  • 3 回答
  • 0 關注
  • 185 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號