লুপ এবং ইটেরেশন উদাহরণ

T-SQL এর লুপ এবং ইটেরেশন - টি-এসকিউএল (T-SQL) - Database Tutorials

366

T-SQL তে লুপ এবং ইটেরেশন ব্যবহারের জন্য বিভিন্ন ধরনের লুপ রয়েছে, যেমন WHILE লুপ, FOR লুপ, এবং CURSOR। T-SQL এ ইটেরেশন বা পুনরাবৃত্তি (repetition) কাজ করতে হলে লুপ ব্যবহৃত হয়, যা নির্দিষ্ট শর্তের ভিত্তিতে একাধিক বার একটি কোড ব্লক চালাতে সাহায্য করে।

এখানে কিছু সাধারণ লুপ এবং ইটেরেশন উদাহরণ দেওয়া হলো:


১. WHILE লুপ উদাহরণ

WHILE লুপ হল T-SQL তে সবচেয়ে সাধারণ লুপ, যা একটি শর্তের ভিত্তিতে কোড চালায় যতক্ষণ না শর্তটি মিথ্যা হয়।

উদাহরণ: ১ থেকে 5 পর্যন্ত সংখ্যা প্রদর্শন করা

DECLARE @Counter INT = 1;

WHILE @Counter <= 5
BEGIN
    PRINT @Counter;
    SET @Counter = @Counter + 1;
END

ব্যাখ্যা:

  • @Counter ভেরিয়েবলটি 1 থেকে শুরু করে 5 পর্যন্ত বৃদ্ধি পায়।
  • WHILE লুপটি যতক্ষণ পর্যন্ত @Counter <= 5 থাকে, ততক্ষণ PRINT কমান্ডের মাধ্যমে প্রতিটি সংখ্যাকে কনসোলে প্রদর্শন করবে।

আউটপুট:

1
2
3
4
5

২. FOR লুপ উদাহরণ

T-SQL তে সরাসরি FOR লুপ নেই, তবে FOR লুপের মত একটি লুপ তৈরি করতে WHILE লুপ ব্যবহার করা হয়। নিচে FOR লুপের মত কাজ করার উদাহরণ দেওয়া হলো।

উদাহরণ: 1 থেকে 10 পর্যন্ত সংখ্যা গুনা করা

DECLARE @Counter INT = 1;

WHILE @Counter <= 10
BEGIN
    PRINT @Counter * 2; -- প্রতিটি সংখ্যাকে 2 দিয়ে গুণ করা
    SET @Counter = @Counter + 1;
END

ব্যাখ্যা:

  • এখানে WHILE লুপ ব্যবহার করে, প্রতি বার গুন করে সংখ্যা প্রদর্শন করা হচ্ছে।
  • @Counter ভেরিয়েবলটি 1 থেকে 10 পর্যন্ত বৃদ্ধি পায় এবং প্রতি সংখ্যাকে 2 দিয়ে গুণ করা হয়।

আউটপুট:

2
4
6
8
10
12
14
16
18
20

৩. CURSOR এর মাধ্যমে ইটেরেশন উদাহরণ

CURSOR ব্যবহার করে একটি টেবিলের প্রতিটি রেকর্ডের ওপর লুপিং করা যায়। এটি বিশেষ করে তখন ব্যবহার হয় যখন আপনি একের পর এক রেকর্ডের সাথে কাজ করতে চান, যেমন একটি টেবিল থেকে প্রতিটি রেকর্ড নিয়ে প্রক্রিয়া সম্পাদন করা।

উদাহরণ: একটি টেবিলের সব রেকর্ড প্রিন্ট করা

DECLARE @EmployeeName NVARCHAR(100);

DECLARE EmployeeCursor CURSOR FOR
SELECT EmployeeName
FROM Employees;

OPEN EmployeeCursor;
FETCH NEXT FROM EmployeeCursor INTO @EmployeeName;

WHILE @@FETCH_STATUS = 0
BEGIN
    PRINT @EmployeeName;
    FETCH NEXT FROM EmployeeCursor INTO @EmployeeName;
END

CLOSE EmployeeCursor;
DEALLOCATE EmployeeCursor;

ব্যাখ্যা:

  • EmployeeCursor একটি কাস্টম কার্সর তৈরি করে যা Employees টেবিল থেকে EmployeeName কলাম নির্বাচন করে।
  • FETCH NEXT কমান্ডটি পরবর্তী রেকর্ডের মান নিয়ে আসে এবং এটি যতক্ষণ না শেষ হয়, ততক্ষণ PRINT কমান্ডের মাধ্যমে নামগুলো প্রদর্শন করা হয়।
  • @@FETCH_STATUS কার্সরটির অবস্থা পরীক্ষা করে, যে লাইনটি শেষ হয়েছে কি না।

আউটপুট:

  • Employees টেবিলের সব EmployeeName প্রদর্শিত হবে (যে নামগুলি টেবিলে রয়েছে)।

৪. BREAK এবং CONTINUE

T-SQL এ BREAK এবং CONTINUE কমান্ডও ব্যবহার করা যেতে পারে, যা লুপের প্রবাহ পরিবর্তন করে। BREAK লুপটি সম্পূর্ণভাবে বন্ধ করে এবং CONTINUE পরবর্তী পুনরাবৃত্তি শুরু করে।

উদাহরণ: 1 থেকে 10 পর্যন্ত সংখ্যা, তবে 5 হলে স্টপ

DECLARE @Counter INT = 1;

WHILE @Counter <= 10
BEGIN
    IF @Counter = 5
    BEGIN
        BREAK; -- লুপটি 5 এর পর বন্ধ হবে
    END
    PRINT @Counter;
    SET @Counter = @Counter + 1;
END

ব্যাখ্যা:

  • যখন @Counter এর মান 5 হবে, তখন BREAK কমান্ডটি লুপটিকে সম্পূর্ণভাবে বন্ধ করে দেবে।

আউটপুট:

1
2
3
4

সারাংশ

  • WHILE লুপ: শর্ত পূর্ণ না হওয়া পর্যন্ত লুপটি চলে।
  • CURSOR: টেবিলের প্রতিটি রেকর্ড নিয়ে ইটেরেশন চালানোর জন্য ব্যবহৃত হয়।
  • BREAK: লুপের প্রবাহ বন্ধ করার জন্য ব্যবহৃত হয়।
  • CONTINUE: লুপের পরবর্তী পুনরাবৃত্তি শুরু করার জন্য ব্যবহৃত হয়।

T-SQL এ লুপ ও ইটেরেশন ব্যবহার করার মাধ্যমে আপনি ডেটাবেসের মধ্যে বিভিন্ন ধরনের কার্যক্রম (যেমন, গণনা, প্রক্রিয়া, ডেটা সংশোধন) করতে পারেন।

Content added By
Promotion

Are you sure to start over?

Loading...