sql টিউটোরিয়াল, পর্ব – ৯ ( WHERE কামান্ড )

এই সিরিজের পূর্বের টিউটোরিয়াল গুলঃ

সবাইকে আরো একবার আমন্ত্রন জানাচ্ছি sql টিউটোরিয়ালে। টিউটোহোস্ট এর সৌজন্যে এই টিউটোরিয়াল পর্বে sql নিয়ে আলোচনা করা হয়। আজকের পর্বে আলোচনা করা হবে SELECT কামান্ড এর সাথে লজিক্যাল বিভিন্ন কামান্ড ব্যবহার করা নিয়ে। চলুন শুরু করা যাক। শুরু করার পূর্বের পর্ব গুলুর কিছু রিভিউ দেখে নেই।

রিভিউঃ

প্রথমে cmd ওপেন করুন এবং mysql এ লগিন করার জন্য cmd তে লিখুন “mysql –u root -p” এবং এন্টার প্রেস করুন। আপনার কাংখিত পাসওয়ার্ড দিন। কাংখিত পাসওয়ার্ড মানে হচ্চে mysql সার্ভারে root নামের ইউজার এর জন্য যে পাসওয়ার্ড সেট করে দেওয়া হয়েছে তা। আপনার ওএস এর পাসওপয়ার্ড অবশ্যই নয়  যদি mysql সার্ভারে root ইউজারের জন্য কোন পাসওয়ার্ড পরিবর্তন করে না থাকেন তাহলে ডিফল্ড পাসওয়ার্ড হিসেবে Null থাকে তাই কিছু না লিখে এন্টার প্রেস করুন। বিগত পর্ব গুলতে আমরা student_info নামের ডাটাবেজ ব্যবহার করেছি, এই পর্বেও উক্ত ডাটাবেজ ব্যবহার করা হবে। student_info নামের ডাটাবেজ নির্বাচন করার জন্য mysql সার্ভারে লগিন থাকা অবস্থায় লিখুন “USE student_info;” । সার্ভার রিটার্ন করবে Database Changed. উক্ত ডাটাবেজের অধীনে কি কি টেবিল রয়েছে তা দেখার জন্য mysql সার্ভারে লগিন থাকা অবস্থায় পুনরায় লিখুন “show tables;” আমরা পূর্বের টিউটোরিয়ালে “info” নামের টেবিল তৈরি করেছিলাম তাই সার্ভার থেকে উক্ত ডাটাবেজ রিটার্ন করবে। পুনরায় লিখুন “SELECT * from info;” উক্ত টেবিলে কি কি ফিল্ড ও তাদের অধীনে কি কি ডাটা রয়েছে তা রিটার্ন করবে।

t0

WHERE:

বিগত পর্ব গুলতে আমরা টেবিলের সকল ফিল্ড এর সকল ডাটা অথবা নিদিষ্ট একটি ফিল্ড এর সকল ডাটা দেখেছি। কিন্তু কখন কখন একটি নিদিষ্ট রো দেখার প্রয়োজন হয়। একটি বিষয় পাঠকের কাছে স্পষ্ট করছি লম্বা লম্বি ভাবে যে ডাটা গুল থাকে তাকে বলা হয় কলাম এবং পাশা পাশি ডাটা গুল কে বলা হয় রো। পুনরায় একবার  দেখে আসি আমাদের “info” নামের টেবিলে কি কি ডাটা রয়েছে। cmd তে লিখুন “SELECT * from info;” এবং এন্টার প্রেস করুন। উক্ত টেবিলে দেখা যাচ্ছে ৩ টি কলাম ও ৪ টি রো রয়েছে। ধরুন কোন কারনে আমাদেরকে ১ নং রো এর সকল ডাটা প্রদর্শন করার প্রয়োজন। সেক্ষেত্রে WHERE ব্যবহার করা হয়। সে ক্ষেত্রে SELECT এর সাথে WHERE ব্যবহার করে কাংখিত রো এর প্রদর্শন করা হয়। এক্ষেত্রে সকল sql সাইন্টেক্স হবে।

t1

“SELECT fild_name FROM table_name WHERE fild_name;”

ধরুন ২নং ID এর রো তে যে সকল ডাটা রয়েছে তা প্রদর্শন করা প্রয়োজন এজন্য cmd ব্যবহার করে mysql সার্ভারে লগিন করে ও “student_Info” নামের ডাটাবেজ নির্বাচন করে লিখুন

“SELECT * FROM info WHERE ID = ‘2’;”

  এবং এন্টার প্রেস করুন। সার্ভার উক্ত ২ নং ID এর সব গুল রো রিটার্ন করবে।

কোড বিশ্লেষনঃ

  • SELECT এর পরের * দিয়ে সকল ফিল্ড নির্দেশ করা হয়েছে।
  • FROM  এর পরের info হচ্ছে টেবিল এর নাম
  • WHERE এর পরের ID হচ্ছে ফিল্ড এর নাম
  • = এর পরের ‘২’ হচ্ছে ID fild এর একটি ডাটা
  • ফাইনাললি যখন সার্ভারে উক্ত রিকোয়েষ্ট / কোড পাঠানো হবে সার্ভার তখন ID ফিল্ডের যে রো এর ডাটা ২ রয়েছে সেই রো টির সকল ফিল্ডের ডাটা প্রদর্শন করবে।
  • এখানে সকল ফিল্ড প্রদর্শন করবে কারন আমরা SELECT এর পরে * ব্যবহার করেছি। আপনি চাইলে যে কোন একটি ফিল্ডও প্রদর্শন করতে পারবেন।

উপরক্ত সাইন্টেক্স এর মাধ্যমে সকল একটি রো এর সকল ফিল্ড এর ডাটা প্রদর্শন করা যাবে কিন্তু কখন কখন এপ্লিকেশন এর জন্য যে কোন একটি ফিল্ড এর ডাটা প্রদর্শন করা প্রয়োজন হতে পারে সেক্ষত্রে সাইন্টেক্স এর সামান্য পরিবর্তন হবে। “SELECT”  এর পরের * এর পরিবর্তে যে ফিল্ড এর ডাটা দেখা প্রয়োজন সে ফিল্ড এর নাম উল্লেখ্য করতে হবে। যেমন: info টেবিলের  2 নং ID রো তে যে Email এড্রেস রয়েছে তা দেখার প্রয়োজন সেক্ষেত্রে sql সাইন্টেক্স হবে

“SELECT Email FROM info WHERE ID = ‘2’;”

সার্ভার উক্ত ID fild এর যে রো তে ২ রয়েছে উক্ত রো এর শুধুমাত্র Email ফিল্ড এর ডাটা দেখাবে।

t2

 কোথায় ব্যবহার করা হয়ঃ

বহুল ব্যবহৃত হয় লগিন সিষ্টেমে। তা ওয়েভ অথবা ডেক্সটপ যে কোন এপ্লিকেশনে। সার্চ এর ক্ষেত্রে ও ব্যবহার করা হয় এই সাইন্টেক্সটি। সার্চ ও লগিন এপ্লিকেশন তৈরি করার জন্য  sql এ এর বিকল্প কোন সাইন্টেক্স নেই। পরবর্তিতে php তে where সাইন্টেক্স দেখানো হবে।

 পাঠকদের অবগতির জন্য জানাও যাচ্ছে পাঠকদের সুবিধার্থে কিছু আঞ্চলিক শব্দ প্রায়ই ব্যবহার করা হয়। আশা করি ক্ষমা সুন্দর দৃষ্টিতে দেখবেন।  এই সিরিজের টিউটোরিয়ালের এই পর্যন্ত আমরা লোকাল সার্ভারের mysql ব্যবহার করেছি পরবর্তি যে কোন পর্বে ওয়েভ সার্ভারের mysql নিয়ে কাজ করব। ওয়েভ সার্ভারে কাজ করার জন্য আপনাকে অবশ্যই ডোমেইন ও হোষ্টিং এর প্রয়োজন হবে। ওয়েভ সার্ভারের জন্য বিশ্বস্ত প্রোভাইডার হচ্ছে টিউটোহোষ্টটিউটোহোষ্টে চলছে বিশেষ অফার মাত্র ৮০০ টাকায় পাচ্ছে ১ গিগা বাইট হোষ্টিং ও একটি উন্নত মানের ডোমেইন।

সবাই সুস্থতা প্রত্যাশা করে আজকের টিউটোরিয়াল এখানে শেষ করছি।

Leave a Comment