خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را


استفاده از حلقه WHILE در SQL Server

استفاده از حلقه WHILE در SQL Server
اگر دستورات و کوئری ها و شروط شما نیاز باشد که در یک حلقه در SQL Server اجرا شوند، می توانید از حلقه While استفاده کنید. دستورات به طور مکرر در این حلقه اجرا می شوند ت ابه جایی برسد که نتیجه False شده و از حلقه خارج شود.

سیستم یکپارچۀ سازمانی راهکار
دستورات درون حلقه WHILE را می توان با Keyword های BREAK و CONTINUE، مدیریت و کنترل کرد.


Syntax استفاده از حلقه While بصورت زیر می باشد.

WHILE Boolean_expression { sql_statement | statement_block | BREAK | CONTINUE }

Boolean_expression

در واقع شرط شماست، که در صورت برقرار بودن شرط، مقدار True و در غیر اینصورت False برمیگرداند.

sql_statement | statement_block

کوئری یا اسکریپتی که باید اجرا شود.

BREAK

در حلقه WHILE به منظور خارج شدن فوری از تکرار فعلی حلقه در شرایط خاص استفاده می شود.

CONTINUE

باعث شروع شدن مجدد حلقه WHILE می شود و اسکریپت های پس از CONTINUE را نادیده می گیرد.
در این مثال ها از IF..ELSE هم استفاده شده است که اگر با IF..ELSE آشنایی ندارید، لطفا اول به لینک زیر مراجعه کنید و سپس مطلب را ادامه دهید.


در مثال زیر از حلقه while استفاده شده و تا زمانی که متغیر به عدد 5 نرسیده باشد، حلقه همین طور ادامه پیدا می کند.

 DECLARE @Seq INT
SET @Seq=1
WHILE ( @Seq <= 5)
BEGIN
PRINT 'Row Number is = ' + CONVERT(VARCHAR,@Seq)
SET @Seq = @Seq + 1
END

استفاده از حلقه WHILE در SQL Server

WHILE With BREAK Keyword

در حلقه While زیر از Break استفاده شده است. در این جا از متغیر استفاده که مقدار آن چک می شود. اگر مقدار متغیر بزرگتر از 3 بود، کنترل به دست IF…ELSE می رسد و BREAK اجرا می شود و نهایتا از حلقه خارج می شود.

DECLARE @Seq INT
SET @Seq=1
WHILE ( @Seq <= 5)
BEGIN
PRINT 'Row Number is = ' + CONVERT(VARCHAR,@Seq)

IF @Seq>=3
BEGIN

BREAK

END

SET @Seq = @Seq + 1
END

استفاده از حلقه WHILE در SQL Server

WHILE LOOP WITH CONTINUE

عبارت CONTINUE در حلقه WHILE به منظور متوقف کردن تکرار جریان فعلی حلقه هنگام وقوع شرایط خاص استفاده می شود و سپس از ابتدای حلقه تکرار جدیدی را شروع می کند.
فرض کنید هنگامی که مقدار متغیر برابر با 2 و 4 باشد، از پرینت آن می خواهیم جلوگیری کنیم. در این حالت می توانیم از عبارت CONTINUE استفاده کنیم.

DECLARE @Seq INT
SET @Seq=1

WHILE ( @Seq <= 5)
BEGIN
IF @Seq =2 or @Seq =4
BEGIN

SET @Seq = @Seq + 1
CONTINUE
END
PRINT 'Row Number is = ' + CONVERT(VARCHAR,@Seq)
SET @Seq = @Seq + 1
END

استفاده از حلقه WHILE در SQL Server

نمایش دیدگاه ها (0 دیدگاه)

دیدگاه خود را ثبت کنید:

انتخاب تصویر ویرایش حذف
توجه! حداکثر حجم مجاز برای تصویر 500 کیلوبایت می باشد.


دسته بندی مطالب خوش آموز