2011-05-28 14 views
5

से विशिष्ट महीने का डेटा कैसे प्राप्त कर सकता हूं मैंने SQL डेटा डेटाबेस में अपना डेटा सहेजा। मैंने अपनी तिथि डेटाबेस में DATETIME डेटाटाइप के रूप में सहेजी।मैं SQLite डेटाबेस

मैं अपने SQLite डेटाबेस से केवल विशिष्ट महीने के डेटा को पुनः प्राप्त करना चाहता हूं।

मैं डेटा को पुनः प्राप्त करने के लिए निम्न क्वेरी का प्रयास करता हूं, लेकिन यह उपयोगी नहीं था। यह मुझे डेटा देता है लेकिन यह विशिष्ट महीने नहीं था।

SELECT coulumn_name FROM table_name WHERE column_name Between "MM-DD-YYYY" AND "MM-DD-YYYY" 
+1

आप प्रारूप "yyyy-mm-dd" में अपनी तिथियाँ साथ की कोशिश की थी? – Mat

+0

नहीं, मैं इसे आजमा नहीं रहा हूं ... क्योंकि मुझे केवल तारीख का यह प्रारूप चाहिए ... अब मैं कोशिश करता हूं, यह काम करता है या नहीं। –

+1

'एमएम-डीडी-वाईवायवाई' के साथ मूल समस्या यह है कि यह निरंतर समय-अवधि के संबंध में शब्दावली से क्रमबद्ध नहीं है। यही कारण है कि सामान्य रूप से आईएसओ 8601 दिनांक/समय का उपयोग करने का एक अच्छा कारण है :-) [SQLite न्यूनतम प्रयास के साथ आईएसओ 8601 का भी समर्थन करता है] –

उत्तर

7

यह शायद इष्टतम नहीं है, लेकिन आप इस्तेमाल कर सकते हैं:

select column_name from table_name where strftime('%Y-%m', column_name) = '2011-05'; 
2

एक समारोह का प्रयोग केवल तारीख

SELECT strftime('%m', date(column_name)) FROM table;

मेरा मानना ​​है कि इस समारोह है के महीने को पुनः प्राप्त है, लेकिन मैं इतना यकीन नहीं है।

+0

+1 लेकिन मुझे वर्ष में खाता लेने की आवश्यकता हो सकती है (मैंने +1 दिया क्योंकि सवाल क्षेत्र में अस्पष्ट प्रकार है)। समारोह को 'WHERE' में भी ले जाया जाना चाहिए। –

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