2016-08-03 11 views
0

で今日の日付から4ヶ月前のASP内のレコードのリマインダーを作成したいです。は、私はこのクエリを書かれているSQL Serverの

+0

私が正しくあなたを得た場合は、DateofServiceが4か月前のすべてのレコードを取得したいのですか?例えばもし今日が8月3日であれば、DateofServiceが4月3日以前にあったすべてのレコードが欲しいです。あれは正しいですか?あなたの質問のタイトルと説明が何らかの形で矛盾しているようです。 – RBT

+0

いいえ、今日の日付が8月3日であれば、私は4月3日のレコードしか必要としませんでした。解決策が見つかりました。日付更新、働いた。 – Ashley2605

答えて

0

これは、時間(時間、分、...)に敏感であることが

WHERE Dateofservice >= DATEADD(MONTH,-4,GETDATE()) 
0

今日から4月のデータの前に戻ります、これを試してみてください:

SELECT MemberId,Title,LastName,FirstName,MiddleName,Occupation,Productof,Dateofpurchase,Dateofservice,Address,City,Pin,Phone,MobileNo1,Email 
FROM tbmMember 
WHERE Dateofservice >= DATEADD(MONTH,-4,GETDATE()) 
AND Dateofservice <= GETDATE() 

この1つは時間に敏感ではありません。

SELECT MemberId,Title,LastName,FirstName,MiddleName,Occupation,Productof,Dateofpurchase,Dateofservice,Address,City,Pin,Phone,MobileNo1,Email 
FROM tbmMember 
WHERE Dateofservice >= CONVERT(date, DATEADD(MONTH,-4,GETDATE())) 
AND Dateofservice <= CONVERT(date, GETDATE()) 

Dateofserviceが日付タイプであると仮定します。

------------- EDIT -----------------

あなただけのバック4ヶ月のデータを必要とする場合:

SELECT MemberId,Title,LastName,FirstName,MiddleName,Occupation,Productof,Dateofpurchase,Dateofservice,Address,City,Pin,Phone,MobileNo1,Email 
FROM tbmMember 
WHERE Dateofservice = CONVERT(date, DATEADD(MONTH,-4,GETDATE())) 

DateofServiceが日付タイプでなければならないことに注意してください、そうでなければ、あなたは、単に4ヶ月のバック今日から日付とあなたの記録の日付を比較したい場合は、同様CONVERT(date, Dateofservice)によって日付として

+0

ありがとうございます。これは働いていますが、4ヶ月前の全記録を戻しています。今日の日付から4ヶ月前の今日の記録が欲しいです。例:今日の日付が3月2016日である場合、私は2016年4月3日の記録のみを望みます。 – Ashley2605

+0

最後のクエリが機能しました。ありがとう。 – Ashley2605

0

をそれを変換する必要がありますあなたがそれを達成する方法はここにあります:

SELECT 
    MemberId 
    ,Title 
    ,LastName 
    ,FirstName 
    ,MiddleName 
    ,Occupation 
    ,Productof 
    ,Dateofpurchase 
    ,Dateofservice 
    ,Address 
    ,City 
    ,Pin 
    ,Phone 
    ,MobileNo1 
    ,Email 
FROM 
    tbmMember 
WHERE 
    CONVERT(Date,Dateofservice) = CONVERT(Date, DATEADD(MONTH, - 4, GETDATE()))