mysql date format timestamp functions with examples
यह व्यापक ट्यूटोरियल सिंटैक्स और MySQL दिनांक प्रारूप और टाइमस्टैम्प कार्यों के उदाहरण प्रदान करता है जैसे वर्तमान तिथि, तिथि जोड़ें, समय जोड़ें आदि।:
इस ट्यूटोरियल में, हम MySQL Date and Time डेटा प्रकारों और MySQL द्वारा प्रदान की गई विभिन्न क्रियाओं के बारे में तारीख और समय मानों में हेरफेर के बारे में गहराई से जानेंगे।
MySQL, दिनांक जोड़ने और घटाने, 2 तिथियों के बीच के अंतर का पता लगाने और दिए गए दिनांक-समय मान के विशिष्ट भागों को निकालने जैसे विभिन्न कार्यों को करने के लिए फ़ंक्शन / उपयोगिताओं का एक बड़ा सेट प्रदान करता है।
आप क्या सीखेंगे:
MySQL दिनांक प्रारूप और समय कार्य
जब भी MySQL तालिकाओं में किसी भी ऑपरेशन की तारीख के समय के मान आवश्यक होते हैं, तो ये कार्य बहुत महत्वपूर्ण होते हैं।
आवश्यक शर्तें
ट्यूटोरियल में उपयोग किए गए उदाहरणों को चलाने के लिए, आपको MySQL स्थापना के स्थानीय सेटअप की आवश्यकता होगी।
= >> MySQL स्थापित करने के लिए हमारे ट्यूटोरियल को देखें यहां।
डेट और टाइम डेटा प्रकार
डेटा प्रकारों में YEAR, DATE, TIME, DATETIME और TIMESTAMP शामिल हैं।
MySQL 5 अलग-अलग डेटा प्रकारों का उपयोग करके दिनांक और समय मानों को संग्रहीत करता है यानी - YEAR, DATE, TIME, DATETIME और TIMESTAMP। MySQL द्वारा प्रदान की गई DATE FORMATS और DATETIME FUNCTIONS में गहराई से गोता लगाने से पहले, नीचे दी गई तालिका में इन बातों को समझने की कोशिश करें।
प्रकार | वाक्य - विन्यास | रेंज | याद | प्रारूप |
---|---|---|---|---|
% ह | घंटा - ०० - २३ | |||
साल | सिर्फ साल का हिस्सा स्टोर करते थे कोलनेम साल | 1901 - 2155 | 1 | 'YYYY' |
तारीख | केवल DATE भाग को संग्रहीत करने के लिए उपयोग किया जाता है। कोलनेम तारीख | '1000-01-01' से '9999-12-31' | ३ | 'YYYY-MM-DD' |
समय | केवल TIME भाग को संग्रहीत करने के लिए उपयोग किया जाता है। कोलनेम समय कोलनेम TIME (n) n -> सटीकता या आंशिक घटक | ‘00: 00: 00 'से ‘23: 59: 59' | 3 + भिन्न स्तर | ‘Hh: mm: ss। (अंश) ' |
दिनांक और समय | DATE और TIME दोनों को संग्रहीत करने के लिए उपयोग किया जाता है कोलनेम दिनांक और समय कोलनेम DATETIME (n) n -> सटीकता या आंशिक घटक | '1000-01-01 00: 00: 00.000000' से '9999-12-31 23: 59: 59.999999' | 5 + भिन्न | ‘YYYY-MM-DD hh: mm: ss। (अंश) ' |
TIMESTAMP | DATE और TIME दोनों को संग्रहीत करने के लिए उपयोग किया जाता है कोलनेम TIMESTAMP कोलनेम TIMESTAMP (n) n -> सटीकता या आंशिक घटक | '1970-01-01 00:00:01' UTC से '2038-01-19 03:14:07' UTC। | 4 + भिन्न | ‘YYYY-MM-DD hh: mm: ss। (अंश) ' |
अब हम आंशिक-भंडारण के लिए मेमोरी आवश्यकताओं को समझेंगे। निर्दिष्ट किए गए भिन्नात्मक घटक के आधार पर TIME, DATETIME और TIMESTAMP डेटा प्रकारों के लिए, भस्म की गई मेमोरी अलग होगी।
भिन्नात्मक अंकों की नहीं | मेमोरी (बाइट्स में) |
---|---|
० | ० |
1-2 | 1 |
3-4 | दो |
5-6 | ३ |
उपरोक्त तालिका का उपयोग करना, उदाहरण के लिए, अगर हमारे पास एक कॉलम प्रकार है - TIME (5)।
तब उपयोग की जाने वाली कुल मेमोरी => समय डेटा प्रकार द्वारा उपयोग की जाने वाली मेमोरी + 5 भिन्न घटक द्वारा उपयोग की जाने वाली मेमोरी => 3 + 3 = 6 बाइट्स
आइए इन सभी डेटा प्रकारों को एक ही तालिका के भाग के रूप में चित्रित करें और उन मानों को देखें, जो प्रत्येक प्रकार को दिए गए हैं।
CREATE TABLE datetime_illustration(year_col YEAR, date_col DATE, time_col TIME, time_col_fractional TIME(2), datetime_col DATETIME, datetime_col_fractional DATETIME(6), timestamp_col TIMESTAMP, timestamp_col_fractional TIMESTAMP(6))
तालिका में अब () फ़ंक्शन का उपयोग करके एक एकल पंक्ति डालें, जो वर्तमान टाइमस्टैम्प है। ध्यान दें कि इस फ़ंक्शन का उपयोग करने से कॉलम के डेटा प्रकार के आधार पर वर्तमान तिथि और समय के केवल आवश्यक भाग को ट्रिमिंग / सम्मिलित करना होगा।
insert into datetime_illustration values (now(), now(), now(), now(), now(), now(), now(), now()); select * from datetime_illustration
अब, विभिन्न स्तंभों में डेटा का विश्लेषण करने के लिए तालिका की सामग्री देखें।
select * from datetime_illustration
इसलिए, हम उपरोक्त आंकड़ों को संक्षेप में प्रस्तुत करते हैं,
- सभी कॉलमों को डेटा प्रकारों के अनुसार मान दिए गए, उदाहरण के लिए, पहले कॉलम के लिए - YEAR - हालांकि हमने) अभी () फ़ंक्शन का उपयोग करके डाला है जो वर्तमान टाइमस्टैम्प है, जो मूल्य डाला गया वह वर्तमान तिथि समय का केवल एक वर्ष का हिस्सा है - अर्थात 2020।
- अब () फ़ंक्शन प्रारूप में वर्तमान डेटाटाइम लौटाता है - dd: mm: yyyy hh: mm: ss
- Having _fractional ’वाले कॉलम नामों में आंशिक भाग को नोटिस करें। निर्दिष्ट किए गए भिन्नात्मक अंकों की संख्या के आधार पर, भिन्नात्मक मूल्यों को पकड़ लिया जाता है और प्रदर्शित किया जाता है।
स्वचालित शुरुआत और DATETIME और टाइमस्टैम्प फ़ील्ड का अद्यतन
वास्तविक जीवन के परिदृश्यों में - अधिकांश समय, DATETIME आरंभीकरण और अद्यतन स्वचालित होने के लिए कॉन्फ़िगर किए गए हैं।
इसका मतलब यह है कि आम तौर पर तालिकाओं में 2 कॉलम होते हैं जैसे - create_time तथा अपडेट किया गया_टाइम ।
जब भी पंक्ति को डाला जाता है, तब बनाया गया वर्तमान समय उस समय का मान लेने के लिए बनाया गया है।
कृपया ध्यान दें कि, पंक्ति सम्मिलन के समय, create_time और updated_time दोनों का समान मान होगा। पंक्ति के बाद के सभी अद्यतनों का परिणाम मौजूदा सिस्टम समय के साथ क्षेत्र को अपडेट करने में होगा।
आइए एक ऐसी तालिका बनाने की कोशिश करें जिसमें स्वत: आरंभ के साथ-साथ अपडेशन भी हो।
हम एक टेबल बनाएंगे जिसका नाम है शेयर की कीमत जिसके पास स्टॉक सिंबल, कीमत और डेटाटाइम फ़ील्ड हैं - create_on और update_on।
create table stock_price(symbol varchar(100), price decimal(10,2), created_on datetime default current_timestamp, updated_on datetime default current_timestamp on update current_timestamp)
तालिका में कुछ डेटा डालें:
insert into stock_price(symbol,price) values('AMZN','3000.10');
आइए परिणाम देखें (ध्यान दें कि हमने केवल प्रतीक और मूल्य के लिए मान दर्ज किए हैं - डेटाटाइम कॉलम, बनाया_ और अपडेट किया हुआ_ स्वचालित रूप से आरंभ किया जाना चाहिए)
select * from stock_price
सबसे अच्छा वायरस हटाने क्या है
नीचे दिखाए गए अनुसार stock AMZN ’स्टॉक के लिए स्टॉक मूल्य अपडेट करने का प्रयास करें:
update stock_price set price='3005.15' where symbol='AMZN'
और अब, तालिका के लिए डेटा फिर से प्राप्त करें। हमें अद्यतन करने का मान देखना चाहिए कि जो कुछ भी समय स्टॉक_प्राइस को अपडेट हुआ, वह बदल गया।
select * from stock_price
अब आप ऊपर दिए गए उदाहरण से देख सकते हैं कि अद्यतन टाइमस्टैम्प पर अद्यतन_ऑन कॉलम का मान अपडेट किया गया था।
MySQL दिनांक और समय कार्य
MySQL कॉलम के लिए कई कार्य प्रदान करता है जिसमें दिनांक और समय संबंधित डेटा प्रकार होते हैं।
इन कार्यों को आमतौर पर उपयोग किया जाता है,
- डेटा को क्वेरी करते समय संग्रहीत दिनांक को आवश्यक प्रारूप में परिवर्तित करें।
- मौजूदा दिनांक समय फ़ील्ड्स को जोड़ते हुए, जैसे स्तंभ के वर्तमान मान में एक अंतराल जोड़ना, वर्तमान सेट मानों से घंटे घटाना आदि।
- संग्रहीत मूल्यों से विशिष्ट जानकारी निकालना, उदाहरण के लिए, संग्रहीत मूल्य से सिर्फ 'तारीख' भाग निकालने और आगे छानने / जैसे संचालन कर रही है समूह द्वारा तारीख के साथ, आदि।
इस खंड में, हम सबसे अधिक इस्तेमाल की जाने वाली तारीख और समय के कार्यों के खिलाफ उदाहरण देखेंगे।
>> देखें यहां ऐसे कार्यों की पूरी सूची के लिए।
(1) वर्तमान तिथि और समय प्राप्त करना
MySQL तारीख और समय के वर्तमान मूल्यों को प्राप्त करने के लिए बहुत सारे काम करता है / निरंतर मान प्रदान करता है और आम तौर पर डेटाइम कॉलम में मूल्यों को संग्रहीत करते समय या वर्तमान तिथि और समय मूल्यों से किसी विशेष सीमा के विरुद्ध पुनर्प्राप्त करते समय उपयोग किया जाता है।
क) दही ()
इस फ़ंक्शन को वर्तमान दिनांक मिलती है। दही के अन्य पर्यायवाची शब्द () फ़ंक्शन हैं - CURRENT_DATE, CURRENT_DATE (), CURRENT_DATE ( भिन्न )
इस फ़ंक्शन का उदाहरण नीचे दिखाया गया है:
select curdate(), CURRENT_DATE(), CURRENT_DATE
बी) क्यूरेट ()
इस फ़ंक्शन को वर्तमान समय मिलता है। एक आंशिक भाग (6 अंक तक) प्राप्त करने के लिए कोष्ठक के रूप में कोष्ठक में अंश निर्दिष्ट करें (3) इससे सिस्टम समय का वर्तमान मान 3 दशमलव स्थानों तक पहुंच जाएगा।
क्यूरेट के अन्य पर्यायवाची शब्द () हैं- CURRENT_TIME, CURRENT_TIME (), CURRENT_TIME ( भिन्न )
select curtime(), CURRENT_TIME(), CURRENT_TIME, curtime(6), CURRENT_TIME(6)
ग) अब ()
इस फ़ंक्शन को वर्तमान टाइमस्टैम्प मिलता है। कोष्ठक में आंशिक अंश निर्दिष्ट करें, उदाहरण के लिए, अब (4) दशमलव के 4 स्थानों तक वर्तमान टाइमस्टैम्प लाएगा।
अब () फ़ंक्शन के अन्य समानार्थी शब्द शामिल हैं CURRENT_TIMESTAMP, CURRENT_TIMESTAMP (), CURRENT_TIMESTAMP () भिन्न )
select now(), CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP, now(6), CURRENT_TIMESTAMP(6)
# 2) तिथियाँ जोड़ना और घटाना
MySQL कॉलम में संग्रहीत किसी मौजूदा मूल्य में दिनांक और समय मानों को जोड़ने और घटाने या डेटा को क्वेरी करने के दौरान उपयोग करने के लिए फ़ंक्शन प्रदान करता है। हम उदाहरणों की सहायता से कार्यों को समझेंगे।
हम घटाव के अलावा तारीख-समय के प्रदर्शन के लिए नीचे दी गई तालिका का उपयोग करेंगे।
create table datetime_calc(datecol DATE, timecol TIME, datetimecol DATETIME(6));
नीचे दी गई जानकारी के अनुसार INSERT कथनों का उपयोग करके उपरोक्त तालिका में कुछ प्रविष्टियाँ डालें:
insert into datetime_calc values(now(), now(), now(6)); insert into datetime_calc values(now(), now(), now(6));
उपरोक्त तालिका को क्वेरी करें और संग्रहीत डेटा देखें:
किसी तालिका में कॉलम अपडेट करने के अलावा, हम सीधे किसी विशिष्ट तिथि / समय या डेटाइम मूल्य पर आवेदन करके SELECT स्टेटमेंट का उपयोग करके डेटाटाइम हेरफेर कर सकते हैं।
a) ADDDATE ()
जैसा कि नाम से पता चलता है, इस फ़ंक्शन का उपयोग मौजूदा तिथि मान में एक तिथि जोड़ने के लिए किया जाता है जो प्रकार का हो सकता है - DATE, DATETIME, या TIMESTAMP
वाक्य - विन्यास:
ADDDATE(inputTimeValue/fieldName, noOfDays)
ADDDATE को अंतराल मूल्य के साथ भी बुलाया जा सकता है - जो DAYS, WEEK, HOUR, MINUTE, SECR, आदि हो सकते हैं।
सिंटेक्स, उस स्थिति में, में बदल जाएगा,
ADDDATE(inputTimeValue/fieldName, Interval intervalUnit)
आइए इसे बेहतर समझने के लिए कुछ उदाहरण देखें।
SELECT ADDDATE('2020-08-15', 31); // output '2020-09-15'
जब किसी पूर्णांक मान को दूसरे तर्क के रूप में आपूर्ति की जाती है, तो इसे दी गई तारीख में जोड़े जाने वाले दिनों की संख्या के रूप में माना जाता है।
अंतराल के साथ कुछ और उदाहरण हैं - MONTH, HOUR, और WEEK हैं:
SELECT ADDDATE('2020-01-02', INTERVAL 1 MONTH); //output 2020-02-02
SELECT ADDDATE('2020-01-02 12:11:11', INTERVAL 5 HOUR); //output 2020-01-02 17:11:11
SELECT ADDDATE('2020-01-02 12:11:11', INTERVAL 1 WEEK); //output 2020-01-09 12:11:11
अंतराल के अन्य उदाहरण हो सकते हैं - MINUTE, SECOND, QUARTER, आदि।
मौजूदा तालिका के एक कॉलम को अपडेट करने के लिए, उदाहरण के लिए, यदि हमने etime डेटाइम_कैल्क ’तालिका बनाई है, तो यदि हम’ डेटॉल ’मान को अपडेट करना चाहते हैं और कॉलम में सभी तिथियों में 10 दिन जोड़ सकते हैं, हम नीचे के रूप में क्वेरी का उपयोग कर सकते हैं:
update datetime_calc set datecol=ADDDATE(datecol, 30);
अब, डेटा डेटा तालिका में सभी डेटा दिखाने के लिए SELECT * का उपयोग करें।
SELECT * FROM datetime_calc
हम उपरोक्त आउटपुट में देख सकते हैं कि डेटॉल कॉलम के मूल्यों को मौजूदा मूल्यों पर 30 दिनों को जोड़ने के बाद 25-08-2020 से 24-09-2020 तक अपडेट किया गया है।
बी) ADDTIME ()
ADD_DATE के समान, ADD_TIME फ़ंक्शन का उपयोग मौजूदा - DATETIME, TIME, या TIMESTAMP स्तंभ / फ़ील्ड या दिए गए इनपुट में समय घटक जोड़ने के लिए किया जा सकता है।
वाक्य - विन्यास:
ADDTIME(inputTimeValue/fieldName, ‘hh:mm:ss’)
उदाहरण:
SELECT ADDTIME('2020-01-02 12:11:11', '01:10:00'); // output 2020-01-02 13:21:11
एक उदाहरण पर नजर डालते हैं, जहां हम उस स्तंभ के सभी मानों में 5 घंटे जोड़कर एक तालिका में डेटाटाइम कॉलम अपडेट कर रहे हैं। यहाँ एक नमूना प्रश्न है:
update datetime_calc set datetimecol=ADDTIME(datetimecol, '05:00:00')
इससे पहले टेबल आउटपुट:
// output '2020-08-25 05:53:37.851379' '2020-08-25 05:53:39.711515'
टेबल आउटपुट के बाद:
// output '2020-08-25 10:53:37.851379' '2020-08-25 10:53:39.711515'
सी) सार्वजनिक ()
SUBDATE, ADDDATE के समान है, एकमात्र अंतर, SUBDATE दिए गए अंतराल / नहीं को घटाता है। कॉलम / फ़ील्ड मान से दिनों का।
वाक्य - विन्यास:
SUBDATE(inputTimeValue/fieldName, noOfDays)
SUBDATE () फ़ंक्शन को दर्शाने के लिए कुछ उदाहरण देखें।
SELECT SUBDATE('2020-08-15', 31); // output 2020-07-15
नीचे दिए गए उदाहरण घंटे / दिनों के सप्ताह, आदि में उल्लिखित एक अंतराल को घटाना दर्शाता है।
SELECT SUBDATE('2020-01-02 12:11:11', INTERVAL 1 WEEK); // output 2019-12-26 12:11:11 SELECT SUBDATE('2020-01-02 12:11:11', INTERVAL 12 HOUR); // output 2020-01-02 00:11:11
डी) सबटाइम ()
SUBTIME दिए गए डेटाइम या टाइम फ़ील्ड मान से: hh: mm: ss 'में निर्दिष्ट समय मान को घटाता है।
वाक्य - विन्यास:
SUBTIME(inputTimeValue/fieldName, ‘hh:mm:ss’)
सबटाइम () फ़ंक्शन के उदाहरण:
SELECT SUBTIME('2020-01-02 12:11:11', '02:20:05'); // output 2020-01-02 09:51:06
# 3) तिथियां परिवर्तित करना
MySQL एक प्रारूप से दूसरे प्रारूप में तिथियों को परिवर्तित करने से लेकर कई तरह के अंतर्निर्मित कार्य प्रदान करता है। आइए तारीखों को परिवर्तित करने के लिए सबसे व्यापक रूप से उपयोग किए जाने वाले कार्यों को देखें।
क) CONVERT_TZ ()
इस फ़ंक्शन का उपयोग दिनांक को एक समयक्षेत्र से दूसरे में परिवर्तित करने के लिए किया जाता है। ये उन परिस्थितियों में काम आते हैं, जहां मान लें कि आपका डेटा UTC टाइमज़ोन का उपयोग करके संग्रहीत किया गया था और यह प्रदर्शित करते हुए कि आप अपनी पसंद के टाइमज़ोन में बदलना चाहते हैं।
उदाहरण के लिए, यूटीसी को मेट (मध्य यूरोपीय समय) में परिवर्तित करें।
SELECT CONVERT_TZ('2004-01-01 12:00:00', 'UTC', 'MET');
टिप्स / नोट्स
# 1) MySQL सिस्टम डेटाबेस में सभी टाइमज़ोन की सूची प्राप्त करने के लिए, आप नीचे दिए गए क्वेरी को चला सकते हैं और किसी भी समय-नाम को एक समय-क्षेत्र से दूसरे में परिवर्तित करने के लिए उपयोग कर सकते हैं।
select * from mysql.time_zone_name
#दो) टाइमज़ोन जानकारी MySQL सर्वर इंस्टॉलेशन की स्थापना के दौरान आबादी है। यदि उपरोक्त क्वेरी का परिणाम NULL है, तो आपको सबसे पहले MySQL सिस्टम टेबल में टाइमज़ोन मान को पॉप्युलेट करना होगा।
>> इस का पालन करें संपर्क इस पर अधिक मदद के लिए।
b) FROM_UNIXTIME ()
इस फ़ंक्शन का उपयोग किसी दिए गए UNIX TIMESTAMP को MySQL डेटाइम फॉर्मेट में बदलने के लिए किया जाता है।
SELECT FROM_UNIXTIME(1547430881); //output 2019-01-14 07:24:41
ग) UNIX_TIMESTAMP
इस फ़ंक्शन का उपयोग किसी दिए गए MySQL डेटाइम को UNIX टाइमस्टैम्प में बदलने के लिए किया जाता है।
SELECT UNIX_TIMESTAMP('2020-03-15 07:10:56.123') //output 1584236456.123
1 जनवरी, 1970, यूटीसी के बाद से सेकंड के रूप में UNIX टाइमस्टैम्प एक निश्चित तारीख का प्रतिनिधित्व है।
>> देखें यहां UNIX टाइमस्टैम्प के बारे में अधिक जानकारी के लिए।
# 4) डेटाइम कॉलम के विशिष्ट भागों को लाना
कभी-कभी, तालिका में डेटाइम फ़ील्ड मान के लिए दिनांक मान का एक विशिष्ट भाग प्राप्त करना वांछित होता है। उदाहरण के लिए , मान लीजिए कि आप कोई गिनती नहीं करना चाहते हैं। आदेश और उन्हें दिन, सप्ताह, महीने, आदि के आधार पर समूहित करें।
और, आम तौर पर बोल, इन मूल्यों को तालिका में अलग कॉलम के रूप में संग्रहीत नहीं किया जाता है - उदाहरण के लिए, आपके पास बस एक कॉलम होगा जैसे - create_on जो एक डेटाइम फ़ील्ड होगा और जिसमें अलग कॉलम नहीं होंगे जैसे - दिनांक, महीना, वर्ष, आदि।
MySQL बहुत सारे उपयोगी तरीके प्रदान करता है जहाँ आप DateTime फ़ील्ड से वांछित भाग निकाल सकते हैं।
मान लीजिए कि हमारे पास एक डेटाटाइम मान है - ’2020-03-15 07: 10: 56.123 '
आइए उपरोक्त डेटाटाइम मान का उपयोग करते हुए उदाहरणों के साथ व्यापक रूप से उपयोग किए जाने वाले कुछ कार्यों पर एक नज़र डालें।
a) DAY निकालें
MySQL DAY जानकारी निकालने के लिए निम्नलिखित कार्य प्रदान करता है:
तारीख() - डेटटाइम फ़ील्ड का DATE () भाग निकालें।
क्या प्रोग्राम c ++ का उपयोग करते हैं
SELECT DATE('2020-03-15 07:10:56.123'); //output 2020-03-15
महीने का दिन() - डेटाइम का DAY भाग निकालें। यह अनिवार्य रूप से महीने का दिन है। इस फ़ंक्शन का उपयोग करने के लिए आशुलिपि DAY () है
SELECT DAYOFMONTH('2020-03-15 07:10:56.123'); //output 15
सप्ताह का दिन () - सप्ताह के दिन के लिए इसी सूचकांक को निकालता है - 1 से 7 के बीच मान।
SELECT DAYOFWEEK('2020-03-15 07:10:56.123'); //output 1
DAYOFYEAR () - नो के संदर्भ में दिन निकालता है। साल में कई दिन बीत गए। मान 1 और 365 के बीच होते हैं (या 366 यदि यह एक लीप वर्ष है)।
SELECT DAYOFYEAR('2020-03-15 07:10:56.123'); //output 75
DAYNAME () - सोमवार से रविवार तक के मानों के साथ दिन का नाम निकालता है।
SELECT DAYNAME('2020-03-15 07:10:56.123'); //output Sunday
b) टाइम निकालें
MySQL TIME मान निकालने के लिए निम्नलिखित कार्य प्रदान करता है:
समय() - प्रारूप hh में समय भाग को निकालता है: mm: ss (भिन्नात्मक सेकंड घटक के साथ यदि उपलब्ध हो)।
SELECT TIME('2020-03-15 07:10:56.123'); //output '07:10:56.123'
हूर () - क्षेत्र / मान के घंटे के हिस्से को निकालता है - 1-24 के बीच मान।
SELECT HOUR('2020-03-15 07:10:56.123'); //output 7
मिनट () - दिए गए डेटाइम के मिनट भाग को निकालता है - 1-60 के बीच मान।
SELECT MINUTE('2020-03-15 07:10:56.123'); //output 10
दूसरा() - दिए गए डेटाटाइम के सेकंड भाग को निकालता है - 1-60 के बीच मान।
SELECT SECOND('2020-03-15 07:10:56.123'); //output 56
माइक्रोसेकंड () - दिए गए DateTime का माइक्रोसेकंड हिस्सा निकालता है।
SELECT MICROSECOND('2020-03-15 07:10:56.123'); //output 123000
c) MONTH निकालें
महीना() - महीना सूचकांक निकालता है। मान 1 - 12 के बीच।
SELECT MONTH('2020-03-15 07:10:56.123'); //output 3
MONTHNAME () - महीने का नाम अर्क। जनवरी से दिसंबर के बीच का मान।
SELECT MONTHNAME('2020-03-15 07:10:56.123'); //output March
घ) WEEK, YEAR और QUARTER निकालें
सप्ताह() - दिए गए DateTime मान के लिए वर्ष का WEEK निकालता है।
SELECT WEEK('2020-03-15 07:10:56.123'); //output 11
साल() - दिनांक का YEAR भाग निकालता है।
SELECT YEAR('2020-03-15 07:10:56.123'); //output 2020
त्रिमास() - वर्ष के संबंध में तिमाही निकालता है। मान 1 से 4 के बीच।
SELECT QUARTER('2020-03-15 07:10:56.123'); //output 1
इन सभी उपरोक्त तरीकों का उपयोग ज्यादातर डेटा विश्लेषण और पूर्वानुमान बनाने के लिए किया जाता है - उदाहरण के लिए, महीने के कौन से दिन थे। उच्चतम के आदेश, आदि।
# 5) 2 तिथियों के बीच अंतर खोजना
2 दिए गए डेटाइम फ़ील्ड मानों के बीच अंतर खोजने के लिए, MySQL DatedIFF () और TIMEDIFF () फ़ंक्शन प्रदान करता है।
क) दिनांकित ()
कुछ दिनों में 2 DateTime (या दिनांक) मानों के बीच का अंतर लौटाता है।
वाक्य - विन्यास:
DATEDIFF(DateTime1, DateTIme2)
DatedIFF () फ़ंक्शन के लिए कुछ उदाहरण देखें:
DatedIFF () डेटाइम इनपुट का उपयोग कर रहा है।
SELECT DATEDIFF('2020-01-05 12:11:11.11', '2020-01-03 14:11:11') //output 2
दिनांक इनपुट का उपयोग करके दिनांकित ()।
SELECT DATEDIFF('2020-04-02', '2020-01-04') //output 89
नकारात्मक आउटपुट के साथ दिनांक इनपुट का उपयोग करके दिनांकित ()।
SELECT DATEDIFF('2020-04-02', '2020-04-05') //output -3
b) TIMEDIFF ()
यह फ़ंक्शन etime hh: mm: ss ’में व्यक्त किए गए 2 डेटाटाइम (या समय) मानों के बीच के अंतर को एक वैकल्पिक आंशिक भाग के साथ देता है, जिस पर TIMEDIFF () फ़ंक्शन के साथ कॉल किया गया था।
वाक्य - विन्यास:
TIMEDIFF(DateTime1, DateTIme2)
उपरोक्त सिंटैक्स के अनुसार, TIMEDIFF () फ़ंक्शन का परिणाम अभिव्यक्ति के लिए h hh: mm: ss 'के रूप में निर्दिष्ट होगा। दिनांक समय १ - डेटटीमी २
कृपया ध्यान दें कि,
- एक्सप्रेशन 1 और एक्सप्रेशन 2 दोनों एक ही प्रकार के हैं - यानी एक डेटाइम, एक और समय, एक पूर्ण मान लौटाएगा।
- Expression1 और Expression2 सिर्फ तिथियां नहीं हो सकती हैं। उदाहरण: DatedIFF (2020-01-01, 2020-02-01) NULL लौट आएगी।
आइए TIMEDIFF () फ़ंक्शन के कुछ उदाहरण देखें:
TIMEDIFF () डेटाइम इनपुट्स का उपयोग करते हुए।
SELECT TIMEDIFF('2020-01-4 12:11:11.11', '2020-01-03 12:11:11') //output 24:00:00.11
TIMEDIFF () समय इनपुट का उपयोग कर।
SELECT TIMEDIFF('12:11:11.11', '02:12:11') //output 09:59:00.11
TIMEDIFF () नकारात्मक आउटपुट लौटाता है।
SELECT TIMEDIFF('2020-01-01 12:11:11.11', '2020-01-03 12:11:11') //output -47:59:59.89
कृपया ध्यान दें कि जब भी पहला तर्क दूसरे वाले से कम हो, यानी पहला तर्क, (और TIMEDIFF) दोनों TIMEDIFF वापस कर सकता है - यानी पहला तर्क दूसरे की तुलना में पुराना डेटटाइम मान रहा है।
# 6) प्रारूपण तिथियाँ
DATE_FORMAT () फ़ंक्शन दिए गए प्रारूप में दिनांक को परिवर्तित करता है।
उदाहरण के लिए: मिमी / yyyy प्रारूप में आवश्यक दिनांक परिवर्तित करना।
SELECT DATE_FORMAT('2020-03-15 07:10:56.123', '%m/%Y'); //output 03/2020
आइए प्रारूप विनिर्देशक का उपयोग करने के लिए कुछ सामान्य सम्मेलनों को देखें:
प्रारूप | विवरण |
---|---|
% य | वर्ष मूल्य - 4 अंक |
% य | वर्ष मूल्य - 2 अंक |
%म | महीने का नाम जैसे- जनवरी, फरवरी |
%म | महीने का नाम - संख्यात्मक |
% d | महीने का दिन |
% ज | घंटा - ०० - १२ |
%मैं | मिनट |
% स | सेकंड |
आवश्यकता के आधार पर इन प्रारूप विनिर्देशकों का उपयोग किया जा सकता है और MySQL DateTime को आवश्यक प्रारूप में परिवर्तित किया जा सकता है।
उदाहरण: Dd / mm / yyyy प्रारूप में बदलने के रूप में निर्दिष्ट किया जा सकता है:
SELECT DATE_FORMAT('2020-03-15 07:10:56.123', '%d/%m/%Y'); //output 15/03/2020
>> देखें यहां MySQL द्वारा समर्थित प्रारूप विनिर्देशकों की पूरी सूची के लिए।
बार बार पूछे जाने वाले प्रश्न
Q # 1) हम MySQL में संग्रहीत दिनांक के वर्ष भाग को कैसे बदल सकते हैं?
उत्तर: किसी दिए गए दिनांक के लिए वर्ष मान को किसी विशेष संख्या में अद्यतन करने के लिए, हम इसका उपयोग कर सकते हैं DATE_ADD फ़ंक्शन और वर्तमान वर्ष की तारीख और उस एक के बीच अंतर जोड़ना, जिसे हम बदलना चाहते हैं।
उदाहरण के लिए: मान लें कि हमारे पास दिनांक -03 2020-03-15 07: 10: 56.123 है और हम सिर्फ तारीख के वर्ष भाग को 2018 में बदलना चाहते हैं। ऐसा करने के लिए,
- हम अपडेट किए जाने वाले वर्ष और तारीख के वास्तविक वर्ष के बीच अंतर पा सकते हैं। यह YEAR फ़ंक्शन का उपयोग करके प्राप्त किया जा सकता है।
SELECT (2018 - year('2020-03-15 07:10:56.123')) //output -2
- अब, हम DATE_ADD फ़ंक्शन का उपयोग करके इस वर्ष को अंतराल के रूप में जोड़ सकते हैं।
SELECT DATE_ADD('2020-03-15 07:10:56.123', INTERVAL -2 year) //output 2018-03-15 07:10:56.123000
आप ऊपर देख सकते हैं कि हमने तारीख के वर्ष भाग को बदल दिया है।
चरणों का एक ही सेट का उपयोग तब किया जा सकता है जब तारीख के एक विशिष्ट हिस्से को बदलने की आवश्यकता होती है। उदाहरण: महीना, दिन, आदि।
Q # 2) MySQL में आवश्यक प्रारूप में डेटाइम कैसे बदलें?
सबसे अच्छी गेमिंग कंपनी क्या है
उत्तर: MySQL क्वेरी परिणामों में प्रदर्शित करने के लिए आवश्यक स्वरूपित स्ट्रिंग में डेटाइम परिवर्तित करने के लिए DATE_FORMAT () फ़ंक्शन प्रदान करता है।
>> देखें यहां प्रारूप विनिर्माताओं की पूरी सूची के लिए।
उदाहरण: डेटाटाइम को प्रारूप में परिवर्तित करने के लिए - dd: mm: yyyy, आप निम्नलिखित क्वेरी का उपयोग कर सकते हैं:
SELECT DATE_FORMAT('2020-03-15 07:10:56.123', '%d:%m:%Y');
Q # 3) MySQL में तारीख प्रारूप क्या है?
उत्तर: MySQL में मानक तिथि प्रारूप d dd-mm-yyyy hh: mm: ss। {है। आंशिक हिस्सा }
MySQL में संग्रहित नमूना डेटाटाइम मान - -15 2020-03-15 07: 10: 56.123 '
Q # 4) MySQL में DATE डेटाटाइप के साथ एक टेबल कैसे बनाया जाए।
उत्तर: MySQL आवश्यकता के अनुसार दिनांक और समय मान संग्रहीत करने के लिए विभिन्न डेटा प्रकार प्रदान करता है। केवल तारीखों को संग्रहीत करने के लिए - DATE डेटा प्रकार का उपयोग किया जा सकता है। यह डेटा को yyyy-mm-dd के प्रारूप में संग्रहीत करता है।
डीएटी प्रकार के रूप में निर्दिष्ट कॉलम का उदाहरण देखें:
CREATE TABLE date_illustration(date_col DATE);
निष्कर्ष
इस ट्यूटोरियल में, हमने विभिन्न डेटा प्रकारों के बारे में सीखा जो MySQL द्वारा दिनांक और समय मानों को संग्रहीत करने के लिए प्रदान किए जाते हैं और MySQL द्वारा प्रदान किए गए कार्यों का उपयोग करने के विभिन्न तरीकों का उपयोग दिनांक समय मूल्यों पर गणना करने के लिए किया जा सकता है।
हमने दिए गए DateTime मान के विशिष्ट भागों को निकालने, दिए गए दिनांक को किसी अन्य रूप में परिवर्तित करने, मौजूदा मानों में दिनांक / समय मान जोड़ने आदि जैसे विभिन्न कार्यों के बारे में भी सीखा।
डेटटाइम MySQL में सबसे महत्वपूर्ण डेटा प्रकारों में से एक है और जब कोई घटना घटित होती है तो विवरण प्राप्त करने के लिए बहुत अधिक महत्व रखता है।
ये मान डेटा विश्लेषकों / मशीन लर्निंग / प्राइसिंग मॉडल आदि द्वारा बहुत व्यापक रूप से उपयोग किए जाते हैं, जहां मशीन सीखने के मॉडल तैयार करने और महत्वपूर्ण व्यावसायिक निर्णय लेने के लिए बहुत सारे स्लाइस और तिथियां की जाती हैं।
अनुशंसित पाठ
- C # DateTime ट्यूटोरियल: उदाहरण के साथ C # में दिनांक और समय के साथ कार्य करना
- PL SQL डेटाटाइम प्रारूप: PL / SQL में दिनांक और समय कार्य
- उदाहरणों के साथ पायथन डेटटाइम ट्यूटोरियल
- C ++ में दिनांक और समय कार्य उदाहरण के साथ
- कोड उदाहरणों के साथ MySQL क्रिएट ट्यूटोरियल देखें
- MySQL इंटे टेबल में डालें - स्टेटमेंट सिंटैक्स और उदाहरण डालें
- उदाहरण के साथ MySQL टेबल ट्यूटोरियल बनाएँ
- MySQL Delete स्टेटमेंट - डिलीट कमांड सिंटैक्स और उदाहरण