MySQL तिथियों के साथ काम कर रहा है
MySQL तिथियाँ
तिथियों के साथ काम करते समय सबसे कठिन हिस्सा यह सुनिश्चित करना है कि जिस तारीख को आप सम्मिलित करने का प्रयास कर रहे हैं उसका प्रारूप डेटाबेस में दिनांक कॉलम के प्रारूप से मेल खाता है।
जब तक आपके डेटा में केवल दिनांक भाग होता है, तब तक आपकी क्वेरी अपेक्षानुसार काम करेंगी। हालांकि, अगर एक समय हिस्सा शामिल है, तो यह और अधिक जटिल हो जाता है।
MySQL दिनांक डेटा प्रकार
डेटाबेस में दिनांक या दिनांक/समय मान संग्रहीत करने के लिए MySQL निम्नलिखित डेटा प्रकारों के साथ आता है:
-
DATE
- प्रारूप YYYY-MM-DD -
DATETIME
- प्रारूप: YYYY-MM-DD HH:MI:SS TIMESTAMP
- प्रारूप: YYYY-MM-DD HH:MI:SS-
YEAR
- प्रारूप YYYY या YY
नोट: जब आप अपने डेटाबेस में एक नई तालिका बनाते हैं तो दिनांक डेटा प्रकार एक कॉलम के लिए सेट किया जाता है!
तिथियों के साथ काम करना
निम्न तालिका को देखें:
आदेश तालिका
OrderId | ProductName | OrderDate |
---|---|---|
1 | Geitost | 2008-11-11 |
2 | Camembert Pierrot | 2008-11-09 |
3 | Mozzarella di Giovanni | 2008-11-11 |
4 | Mascarpone Fabioli | 2008-10-29 |
अब हम उपरोक्त तालिका से "2008-11-11" के ऑर्डरडेट के साथ रिकॉर्ड्स का चयन करना चाहते हैं।
हम निम्नलिखित SELECT
कथन का उपयोग करते हैं:
SELECT * FROM Orders WHERE OrderDate='2008-11-11'
परिणाम-सेट इस तरह दिखेगा:
OrderId | ProductName | OrderDate |
---|---|---|
1 | Geitost | 2008-11-11 |
3 | Mozzarella di Giovanni | 2008-11-11 |
नोट: यदि कोई समय घटक शामिल नहीं है तो दो तिथियों की तुलना आसानी से की जा सकती है!
अब, मान लें कि "आदेश" तालिका इस तरह दिखती है ("ऑर्डरडेट" कॉलम में जोड़ा गया समय-घटक देखें):
OrderId | ProductName | OrderDate |
---|---|---|
1 | Geitost | 2008-11-11 13:23:44 |
2 | Camembert Pierrot | 2008-11-09 15:45:21 |
3 | Mozzarella di Giovanni | 2008-11-11 11:12:01 |
4 | Mascarpone Fabioli | 2008-10-29 14:56:59 |
यदि हम SELECT
ऊपर दिए गए समान कथन का उपयोग करते हैं:
SELECT * FROM Orders WHERE OrderDate='2008-11-11'
हमें कोई परिणाम नहीं मिलेगा! ऐसा इसलिए है क्योंकि क्वेरी केवल उन तिथियों की तलाश में है जिनमें कोई समय भाग नहीं है।
युक्ति: अपने प्रश्नों को सरल और बनाए रखने में आसान रखने के लिए, अपनी तिथियों में समय-घटकों का उपयोग न करें, जब तक कि आपको यह न करना पड़े!