2012-01-05 54 views
3

我有一個表altstore與保留日期的列checkindate。我的要求是獲取一個月的備選天數記錄,例如每月的第一天,第三天等等。請幫我使用我可以使用的sql查詢。 謝謝。查詢以基於列的替代天獲取記錄

+0

什麼數據庫服務器您使用的,順便說一下?其數據庫服務器爲 – Eric 2012-01-05 18:28:16

+0

。 – Sid 2012-01-05 18:46:33

回答

2

嘗試使用:

select * from altstore 
where DATEDIFF (day,startingdate,enddate) % 2 is 1 

這裏startingdate是本月的第一個日期和enddatecheckindate列值。

+0

我得到正確的記錄..謝謝 – Sid 2012-01-05 19:06:40

2

使用datepartmodulo

select 
    * 
from 
    table 
where 
    datepart(dd, checkindate) % 2 = 1 
    and checkindate between '2011-12-01' and '2011-12-31' 
+0

爲什麼checkindate限制日期(到2011年)? – 2012-01-05 18:32:08

+0

@aF。 - 問題措辭的方式讓我覺得用戶只需要一個月的時間。 – Eric 2012-01-05 18:38:20

0

嘗試使用的東西在這些線路上:

SELECT * from yourtable where date(checkindate)%2 !=0