जवाबों:
हाँ यह PostgreSQL में काम करता है (स्तंभ " तिथि " को डेटाटाइप का मानकर date) आप इसे क्यों नहीं आज़माते हैं?
मानक ANSI SQL प्रारूप होगा:
SELECT Table.date
FROM Table
WHERE date > current_date - interval '10' day;
मैं उस प्रारूप को पसंद करता हूं क्योंकि यह चीजों को पढ़ना आसान बनाता है (लेकिन यह जैसा है current_date - 10)।
interval '10 day'पोस्टग्रेज सिंटैक्स है। interval '10' daySQL मानक पर आधारित वाक्यविन्यास है और Postgres द्वारा समर्थित
10, नहीं9
http://www.postgresql.org/docs/current/static/functions-datetime.html उन ऑपरेटरों को दिखाता है जिन्हें आप दिनांक और समय (और अंतराल) के साथ काम करने के लिए उपयोग कर सकते हैं।
इसलिए आप यह चाहते हैं
SELECT "date"
FROM "Table"
WHERE "date" > (CURRENT_DATE - INTERVAL '10 days');
ऊपर दिए गए ऑपरेटर / कार्य विस्तार से प्रलेखित हैं:
मेरे परीक्षण (और PostgreSQL dox ) से मेरी समझ यह है कि उद्धरणों को अन्य उत्तरों से अलग तरीके से करने की आवश्यकता है, और इस तरह "दिन" को भी शामिल करना चाहिए:
SELECT Table.date
FROM Table
WHERE date > current_date - interval '10 day';
यहां प्रदर्शित किया गया है (आप इसे किसी भी पोस्टग्रैब्स डीबी पर चलाने में सक्षम होना चाहिए):
SELECT DISTINCT current_date,
current_date - interval '10' day,
current_date - interval '10 days'
FROM pg_language;
परिणाम:
2013-03-01 2013-03-01 00:00:00 2013-02-19 00:00:00
मैं डेटाटिप्स की जाँच करूँगा।
current_date की "तिथि" डेटापाइप है, 10 एक संख्या है, और Table.date - आपको अपनी तालिका देखने की आवश्यकता है।
आप इसके बीच भी उपयोग कर सकते हैं:
SELECT Table.date
FROM Table
WHERE date between current_date and current_date - interval '10 day';
betweenतो यह सही ढंग से के रूप में किया जा सकता है, पहले न्यूनतम मान वाले हो गया है SELECT Table.date FROM Table WHERE date between current_date - interval '10 day' and current_date;