2017-02-10 54 views
0

我應該讓它向我介紹一個房產的地址,讓他們在上市後的一個月內搬家。SQL檢查是否在一個月內完成

SELECT rp.rp_street, rp.rp_city, rp.rp_state, rp.rp_zipcode 
FROM dbo.rentproperty rp 
INNER JOIN dbo.rental r 
ON (rp.rp_propertyno = r.ren_rp_propertyno) 
WHERE r.ren_moveindate BETWEEN rp.rp_datelisted AND rp.rp_datelisted + 30; 

我不斷收到

Msg 206, Level 16, State 2, Line 1 
Operand type clash: date is incompatible with int 
+0

我的壞。帖子編輯 –

+0

使用'DATEADD'。 https://msdn.microsoft.com/en-CA/library/ms186819.aspx。在你的情況下,'DATEADD(DAY,30,rp.rp_datelisted)'。 – Eric

+0

http://stackoverflow.com/a/923322/2654498 –

回答

3

您可以使用dateadd(day,n,col)來天添加日期:

select rp.rp_street, rp.rp_city, rp.rp_state, rp.rp_zipcode 
from dbo.rentproperty rp 
inner join dbo.rental r on (rp.rp_propertyno = r.ren_rp_propertyno) 
where r.ren_moveindate between rp.rp_datelisted 
     and dateadd(day, 30, rp.rp_datelisted); 
+0

工作!謝謝! –