2013-07-18 3 views
8

मैं एसक्यूएल सर्वर 2008 का उपयोग कर रहा हूं। आज के डेटा से पूछताछ करने के लिए आज और 7 दिन पहले क्या है?आज की तारीख और डेटा से 7 दिन पहले पूछताछ कैसे करें?

+0

फिर आपने mysql के साथ टैग क्यों किया है? –

+0

इसे जांचें - http://msdn.microsoft.com/en-us/library/ms186819.aspx –

उत्तर

21

इस तरह का प्रयास करें:

select * from tab 
where DateCol between DateAdd(DD,-7,GETDATE()) and GETDATE() 
+1

वह केवल तारीख चाहता है, इसलिए GETDATE() – makciook

+1

@makciook के साथ SYSDATETIME() को प्रतिस्थापित करना एक अच्छा विचार हो सकता है - दोनों ['SYSDATETIME()' और 'GETDATE()'] (http://msdn.microsoft.com/en-us/library/ms186724.aspx) डेटाटाइम मान वापस करें। –

+0

@ डेमियन - सच है, लेकिन SYSDATETIME() आपको अनियंत्रित परिशुद्धता देता है, और नाम उपयोग और भविष्य के रखरखाव के लिए उपयुक्त नहीं है। – makciook

5

Parado के जवाब में क्वेरी सही है, आप MySql भी बजाय GETDATE (उपयोग करने के लिए) आप का उपयोग करना चाहिए चाहते हैं (आप Sql सर्वर और MySQL के साथ इस सवाल टैग किया है क्योंकि) :

select * from tab 
where DateCol between adddate(now(),-7) and now() 
+0

एसओ पर अन्य उत्तरों का संदर्भ देना एक बुरा विचार है उनकी स्थिति (जो मैं आपको "ऊपरी क्वेरी" से मानता हूं), क्योंकि वोट उत्तर की सापेक्ष स्थिति बदल सकते हैं। यदि आप किसी अन्य उत्तर का संदर्भ लेना चाहते हैं, तो आमतौर पर इसके लिए एक लिंक जोड़ने के लिए सबसे अच्छा होता है (प्रत्येक उत्तर में इसके नीचे 'शेयर' विकल्प होता है, जिसमें से एक यूआरएल प्राप्त किया जा सकता है) और/या अन्य उपयोगकर्ताओं के नाम का उपयोग करने के लिए। –

+1

ठीक है, क्षमा करें। मैं नौसिखिया हूँ;) –

संबंधित मुद्दे