0
我試圖執行下面的語句以便只顯示過去29天列出的屬性,但是當我執行命令時就好像忽略了一樣2012年的房產正在顯示。我過去看了些什麼?WHERE子句中的SQL DATEDIFF謂詞不會像預期的那樣限制結果
編輯:字段類型是smalldatetime的
where DATEDIFF(DAY, ListedDate, GETDATE()) < 29
我試圖執行下面的語句以便只顯示過去29天列出的屬性,但是當我執行命令時就好像忽略了一樣2012年的房產正在顯示。我過去看了些什麼?WHERE子句中的SQL DATEDIFF謂詞不會像預期的那樣限制結果
編輯:字段類型是smalldatetime的
where DATEDIFF(DAY, ListedDate, GETDATE()) < 29
這只是一個工作,在評論上提到了答案。我決定將它作爲原始海報之後的答案發布。這是爲了讓其他用戶更容易找到。
where ListedDate > DATEADD(day, -29, getdate())
有關爲什麼它的答案,請閱讀下面原來的問題
什麼是你ListedDate字段的數據類型,註釋的細節? –
smalldatetime是實體類型 – DeveloperDevine
這裏有兩個問題。我認爲ListedDate早於當前日期?你的功能是倒退的。更重要的是,你的謂詞是不可變的。你在一個函數中包裝你的列。我們可以把它轉換成你的謂詞是可控的。 –