এসকিউএল পিএইচপি ওয়ার্ডপ্রেস জাভাস্ক্রিপ্ট জেকুয়েরি এইচটিএমএল সিএসএস সি প্রোগ্রামিং
ফোরাম
×

এসকিউএল টিউটোরিয়াল

হোম-Home পরিচিতি-Introduction সিনটেক্স-Syntax ডেটাবেস তৈরী-Create DB টেবিল তৈরী-Create Table ড্রপ-Drop সিলেক্ট-Select ইনসার্ট ইন্টু-Insert Into এসকিউএল-Where এসকিউএল-And এবং Or আপডেট-Update ডিলিট-Delete লাইক-Like সিলেক্ট টপ-Select Top অর্ডার বাই-Order By গ্রুপ বাই-Group By ডিস্টিংক্ট-Distinct সিলেক্ট ইন্টু-Select Into ইনসার্ট ইন্টু সিলেক্ট-Insert Into Select এসকিউএল-Not Null ইউনিক-Unique ডিফল্ট-Default চেক-Check প্রাইমারি কি-Primary Key ফরেন কি-Foreign Key এসকিউএল-In এসকিউএল-Between এসকিউএল-Auto Increment

এসকিউএল ডাটাবেস

কনস্ট্রেইন্ট-Constraints এসকিউএল-Joins এসকিউএল-Inner Join এসকিউএল-Left Join এসকিউএল-Right Join এসকিউএল-Full Join এসকিউএল-Union এসকিউএল-Null Values এসকিউএল-Null Functions এসকিউএল-Aliases এসকিউএল-Create Index এসকিউএল-Alter এসকিউএল-Views এসকিউএল-Having এসকিউএল-Wildcards এসকিউএল-Dates এসকিউএল-Data Types

এসকিউএল ফাংশন

এসকিউএল-Functions এসকিউএল-Avg() এসকিউএল-Count() এসকিউএল-First() এসকিউএল-Last() এসকিউএল-Max() এসকিউএল-Min() এসকিউএল-Sum() এসকিউএল-Ucase() এসকিউএল-Lcase() এসকিউএল-Mid() এসকিউএল-Len() এসকিউএল-Round() এসকিউএল-Now() এসকিউএল-Format()

অ্যাডভান্স এসকিউএল

এসকিউএল-অস্থায়ী(Temporary) টেবিল এসকিউএল-Injection এসকিউএল-Hosting

 

SQL Date ফাংশন


তারিখ নিয়ে কাজ করার সময় সবচেয়ে গুরত্বপূর্ণ কাজ হলো আপনি তারিখের যে ফরম্যাট নির্বাচন করেছেন তা যেন আপনার ডেটাবেজ কলামের date ফরম্যাটের সাথে মিলে। এটা নাহলে আপনি ডেটাবেজে সঠিক ভাবে date ইনপুট করতে পারবেন না।

আপনার date কলামে শুধুমাত্র তারিখ থাকলে কুয়েরি করতে অনেক সহজ হবে। কিন্তু যদি আপনার date কলামে তারিখের পাশাপাশি সময়ও থাকে তাহলে কুয়েরি করা একটু কঠিন হয়ে উঠে।

নিম্নে MySQL এবং SQL Server এর কিছু গুরুত্বপূর্ণ বিল্ট-ইন date ফাংশন এবং তাদের ব্যবহার বর্ণনা করা হলোঃ


MySQL Date ফাংশন

নিম্নের তালিকায় MySQL এর কয়েকটি গুরুত্বপূর্ণ বিল্ট-ইন ফাংশন দেওয়া হলঃ

ফাংশন বর্ণনা
NOW() বর্তমান date এবং time রিটার্ন করবে।
CURDATE() বর্তমান date রিটার্ন করবে।
CURTIME() বর্তমান time রিটার্ন করবে।
DATE() date অথবা date/time এক্সপ্রেশন থেকে শুধুমাত্র date অংশটি নিবে।
EXTRACT() date অথবা time যেকোন একটি অংশ রিটার্ন করবে।
DATE_ADD() date এ একটি নির্দিষ্ট সময় ব্যবধান যোগ করবে।
DATE_SUB() date থেকে একটি নির্দিষ্ট সময় ব্যবধান বিয়োগ করবে।
DATEDIFF() দুইটি date এর পার্থক্য রিটার্ন করবে।
DATE_FORMAT() date অথবা time কে দেখানোর জন্য বিভিন্ন ফরম্যাট নির্ধারন করবে।

SQL Server Date ফাংশন

নিম্নের লিস্টে SQL Server এর কয়েকটি গুরুত্বপূর্ণ বিল্ট-ইন ফাংশন দেওয়া হলঃ

ফাংশন বর্ণনা
GETDATE() বর্তমান date এবং time রিটার্ন করবে।
DATEPART() date অথবা time যেকোন একটি অংশ রিটার্ন করবে।
DATEADD() date থেকে একটি নির্দিষ্ট সময় ব্যবধান যোগ/বিয়োগ করবে।
DATEDIFF() দুইটি date এর পার্থক্য রিটার্ন করবে।
CONVERT() date অথবা time কে দেখানোর জন্য বিভিন্ন ফরম্যাট নির্ধারন করবে।

SQL Date টাইপ

MySQL ডেটাবেজে date অথবা date/time এর সিনট্যাক্সঃ

  • DATE - ফরম্যাটঃ YYYY-MM-DD
  • DATETIME - ফরম্যাটঃ YYYY-MM-DD HH:MI:SS
  • DATETIME - ফরম্যাটঃ YYYY-MM-DD HH:MI:SS
  • YEAR - ফরম্যাটঃ YYYY অথবা YY

SQL Server ডেটাবেজে date অথবা date/time এর সিনট্যাক্সঃ

  • DATE - ফরম্যাটঃ YYYY-MM-DD
  • DATETIME - ফরম্যাটঃ YYYY-MM-DD HH:MI:SS
  • SMALLDATETIME - ফরম্যাটঃ YYYY-MM-DD HH:MI:SS
  • DATETIME - ফরম্যাটঃ একটি ইউনিক নাম্বার

বিঃদ্রঃ ডাটবেজে নতুন টেবিল তৈরি করার সময় আপনি কলাম এর জন্য date এর টাইপ নির্ধারণ করে দিতে পারবেন!


SQL Date ফাংশন এর ব্যবহার

তারিখের সাথে অন্য কোন উপাদান জড়িত না থাকলে আপনি খুব সহজেই দুইটি তারিখের মধ্যে তুলনা করতে পারেন।

নিম্নলিখিত "Student_attendance" টেবিলটি দেখুনঃ

আইডি নং রোল নাম্বার উপস্থিতি ভর্তির তারিখ
১০১ ৮৯ ০১-১১-২০১৫
১০২ ৯১ ০১-১১-২০১৫
১০৩ ৮০ ০১-১১-২০১৫
১০৪ ৭৫ ০২-১১-২০১৫
১০৫ ৭৭ ০২-১১-২০১৫

এখন আমরা "ভর্তির তারিখ(Admission_date)" কলাম থেকে "০১-১১-২০১৫" তারিখের রেকর্ড-সমূহ সিলেক্ট করবো।

উদাহরণ
SELECT * FROM Student_attendance
WHERE Admission_date='০১-১১-২০১৫';

ফলাফলঃ

আইডি নং রোল নাম্বার উপস্থিতি ভর্তির তারিখ
১০১ ৮৯ ০১-১১-২০১৫
১০২ ৯১ ০১-১১-২০১৫
১০৩ ৮০ ০১-১১-২০১৫

এখন আমরা "Student_attendance" টেবিলের "ভর্তির তারিখ(Admission_date)" কলামে তারিখের সাথে সময়ও যুক্ত করবো।

ধরুন, এখন আমাদের "Student_attendance" টেবিলটি নিম্নের মত দেখাবেঃ

আইডি নং রোল নাম্বার উপস্থিতি ভর্তির তারিখ
১০১ ৮৯ ০১-১১-২০১৫ ১১:৩০:২০
১০২ ৯১ ০১-১১-২০১৫ ১১:৩২:১০
১০৩ ৮০ ০১-১১-২০১৫ ১১:৪০:৪৫

এখন আমরা যদি উপরের মত একই SELECT স্টেটমেন্ট ব্যবহার করি তাহলে আমরা কোন ফলাফল পাবো না! কারন এই কুয়েরিটি শুধুমাত্র date কে সিলেক্ট করবে।

বিঃদ্রঃ আপনি যদি আপনার কুয়েরিকে সহজ রাখতে চান তাহলে date কলামে time কে ভিন্ন কলামে যোগ করুন।