SQL কী এবং কী কাজে ব্যবহৃত হয়?
SQL হলো relational database নিয়ে কাজ করার standard ভাষা। জানুন এটি কী, চারটি মূল statement এবং AI engineer-দের কেন এটি দরকার।
ছোট উত্তর: SQL (Structured Query Language) হলো relational database-এ ডেটা সংরক্ষণ, পড়া ও পরিবর্তনের standard ভাষা। এর মাধ্যমে আপনি ডেটাকে প্রশ্ন করেন, যেমন "এই মাসে কোন ক্রেতারা অর্ডার করেছেন?", এবং রেকর্ড যোগ, আপডেট বা মুছে ফেলেন। অ্যাপ, analytics টিম ও AI engineer, সবাই এটি ব্যবহার করে।
Relational Database কী?
Relational database ডেটা রাখে table-এ, অনেকটা spreadsheet-এর মতো। প্রতিটি table-এ থাকে column (তথ্যের ধরন) ও row (আলাদা আলাদা রেকর্ড)। এক table অন্য table-এর সঙ্গে যুক্ত হতে পারে, যেমন orders table যুক্ত থাকে customers table-এর সঙ্গে। তাই একে "relational" বলা হয়। PostgreSQL, MySQL, MariaDB ও SQLite প্রচলিত relational database, এবং সবই সামান্য পার্থক্যসহ SQL বোঝে।
একটি উদাহরণ table
ধরুন products নামে একটি table আছে:
id | name | category | price |
|---|---|---|---|
1 | Notebook | stationery | 5 |
2 | Pen | stationery | 2 |
3 | Headphones | electronics | 40 |
চারটি মূল statement
SELECT: ডেটা পড়া
SELECT name, price
FROM products
WHERE category = 'stationery'
ORDER BY price DESC;এটি প্রথমে Notebook (5), তারপর Pen (2) ফেরত দেবে। WHERE row ছেঁকে নেয় এবং ORDER BY সাজায়।
INSERT: নতুন row যোগ করা
INSERT INTO products (id, name, category, price)
VALUES (4, 'Mouse', 'electronics', 15);UPDATE: বিদ্যমান row বদলানো
UPDATE products
SET price = 6
WHERE name = 'Notebook';DELETE: row মুছে ফেলা
DELETE FROM products
WHERE name = 'Pen';UPDATE ও DELETE-এর সঙ্গে সবসময় WHERE দিন। না দিলে statement table-এর প্রতিটি row-তে কাজ করবে।
বাড়তি: GROUP BY দিয়ে গোনা
SELECT category, COUNT(*) AS items, AVG(price) AS avg_price
FROM products
GROUP BY category;এটি row-গুলোকে category অনুযায়ী group করে এবং প্রতিটি group-এ কয়টি product আছে ও তাদের গড় দাম দেখায়। শুরুর table থেকে ফল আসবে stationery (২টি, গড় ৩.৫) এবং electronics (১টি, গড় ৪০)। এ ধরনের প্রশ্নই ডেটা বিশ্লেষণের মূল, আর SQL ঘণ্টার পর ঘণ্টা হাতে গোনার বদলে কয়েক লাইনে উত্তর দেয়।
SQL কোথায় ব্যবহার হয়?
Application: বেশিরভাগ ওয়েবসাইট ও অ্যাপ ব্যবহারকারী, অর্ডার ও মেসেজ database-এ রাখে এবং পর্দার আড়ালে SQL দিয়ে পড়ে।
Analytics: analyst-রা
GROUP BYও aggregate দিয়ে গোনেন, যোগ করেন ও তুলনা করেন, যেমন ক্যাটাগরি অনুযায়ী বিক্রি।AI-র ডেটা প্রস্তুতি: training ও evaluation ডেটা প্রায়ই database-এ থাকে। model-এ যাওয়ার আগে তা বাছাই, ফিল্টার ও পরিষ্কার করতে SQL লাগে।
AI engineer-দের SQL কেন দরকার?
AI সিস্টেম ততটাই ভালো, যতটা ভালো তার ডেটা। একজন AI engineer-কে প্রায়ই সঠিক রেকর্ড তুলতে, কয়েকটি table join করতে, duplicate সরাতে এবং ডেটার মান যাচাই করতে হয়। অনেক AI application কথোপকথন, ডকুমেন্ট ও ফলাফলও database-এ রাখে। এসবের জন্য SQL-ই হাতিয়ার, আর এটি শিখতেও দ্রুত। কোথায় এটি বসে দেখতে পড়ুন AI engineer হওয়ার roadmap।
আরও গভীরে যেতে পড়ুন চ্যাপ্টার ডেটা, ডেটাবেস ও SQL: AI ইঞ্জিনিয়ারের কেন দরকার, তারপর INSERT, UPDATE, DELETE আর আপসার্ট নিরাপদে।
সাধারণ ভুল
WHERE ভুলে যাওয়া
UPDATEবাDELETE-এ, ফলে প্রতিটি row বদলে যায়।সব জায়গায় SELECT * ব্যবহার। শুধু দরকারি column চান।
আসল ডেটায় পরীক্ষা করা। আগে কপি বা practice database-এ অনুশীলন করুন।
Interview tip:
WHERE(group করার আগে row ছাঁকে) ওHAVING(group করার পরে group ছাঁকে)-এর পার্থক্য বলার জন্য তৈরি থাকুন।
মূল কথা
SQL হলো relational database-এর সঙ্গে কথা বলার ভাষা। আগে SELECT, INSERT, UPDATE ও DELETE শিখুন, এতেই অনেক কিছু করা যায়।
শুরু করতে চান? হাতে-কলমে অনুশীলনের মাধ্যমে প্রথম query থেকে join ও ডেটা পরিষ্কার করা পর্যন্ত SQL শিখুন। শুরু করুন ফ্রি কোর্স AI-এর জন্য SQL ও ডেটা হ্যান্ডলিং: বিগিনার দিয়ে।
সম্পর্কিত লেখা
SQL ও ডেটা বিভাগের আরও লেখা
মন্তব্য
আলোচনায় যোগ দিতে সাইন ইন করুন।