কম্পিউটার টিউটোরিয়াল

MySQL-এ INSERT করার সময় তারিখে মান যোগ করে মান সেট করা (UPDATE ছাড়া)

MySQL-এ DATE_ADD() ফাংশন ব্যবহার করে INSERT করার সময়ই তারিখে মিনিট, ঘন্টা, দিন, মাস বা বছর যোগ করে মান সেট করা যায়, পরে UPDATE দরকার নয়।

উদাহরণ: টেবিল তৈরি

mysql> create table DemoTable816(DueDate datetime); 
Query OK, 0 rows affected (0.45 sec)

বিভিন্ন ইন্টারভ্যাল সহ ইনসার্ট

mysql> insert into DemoTable816 values(date_add(now(),interval 3 minute)); 
Query OK, 1 row affected (0.16 sec) 
mysql> insert into DemoTable816 values(date_add('2018-01-21 00:00:00',interval 3 Hour)); 
Query OK, 1 row affected (0.52 sec) 
mysql> insert into DemoTable816 values(date_add('2016-11-11 12:40:00',interval 3 Day)); 
Query OK, 1 row affected (0.17 sec) 
mysql> insert into DemoTable816 values(date_add('2018-12-01 11:00:00',interval 3 Month)); 
Query OK, 1 row affected (0.18 sec) 
mysql> insert into DemoTable816 values(date_add('2011-03-21 10:00:00',interval 3 Year)); 
Query OK, 1 row affected (0.16 sec)

সকল রেকর্ড দেখানো

mysql> select * from DemoTable816;
+---------------------+
| DueDate             |
+---------------------+
| 2019-08-03 13:08:43 |
| 2018-01-21 03:00:00 |
| 2016-11-14 12:40:00 |
| 2019-03-01 11:00:00 |
| 2014-03-21 10:00:00 |
+---------------------+
5 rows in set (0.00 sec)

ব্যাখ্যা

ইনসার্টবেস তারিখ/সময়যোগ করাফলাফল
১NOW() (বর্তমান)৩ মিনিট২০১৯-০৮-০৩ ১৩:০৮:৪৩
২২০১৮-০১-২১ ০০:০০:০০৩ ঘন্টা২০১৮-০১-২১ ০৩:০০:০০
৩২০১৬-১১-১১ ১২:৪০:০০৩ দিন২০১৬-১১-১৪ ১২:৪০:০০
৪২০১৮-১২-০১ ১১:০০:০০৩ মাস২০১৯-০৩-০১ ১১:০০:০০
৫২০১১-০৩-২১ ১০:০০:০০৩ বছর২০১৪-০৩-২১ ১০:০০:০০

সিনট্যাক্স রেফারেন্স

DATE_ADD(date, INTERVAL expr unit)
DATE_SUB(date, INTERVAL expr unit)  -- বিয়োগের জন্য

ইন্টারভ্যাল ইউনিট

  • MICROSECOND, SECOND, MINUTE, HOUR
  • DAY, WEEK, MONTH, QUARTER, YEAR
  • সammansৃত: SECOND_MICROSECOND, MINUTE_SECOND, HOUR_MINUTE, DAY_HOUR, YEAR_MONTH

লাভ: অ্যাপ্লিকেশন লেয়ারে ডেটা ক্যালকুলেট করিয়ে ইনসার্ট করার চেয়ে ডাটাবেস লেভেলে করলে ডেটা ইন্টিগ্রিটি রক্ষা থাকে এবং কোড সহজ হয়।

  1. MySQL-এ IF() এবং টাইমস্ট্যাম্প ব্যবহার করে ২ বছরের বেশি পুরনো রেকর্ডকে বুলিয়ান ফ্ল্যাগে রূপান্তর করা

  2. MySQL-এ নির্দিষ্ট মান 'None' কে 'N/A' দিয়ে আপডেট করা

  3. MySQL-এ প্রথম ৩ রোয়ের কলাম মান নির্দিষ্ট মান দিয়ে আপডেট করা

  4. MySQL-এ ইনিশিয়াল ভ্যালু ও অটো-ইনক্রিমেন্ট সেট করা