خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را
استفاده از حلقه WHILE در SQL Server
اگر دستورات و کوئری ها و شروط شما نیاز باشد که در یک حلقه در SQL Server اجرا شوند، می توانید از حلقه While استفاده کنید. دستورات به طور مکرر در این حلقه اجرا می شوند ت ابه جایی برسد که نتیجه False شده و از حلقه خارج شود.
دستورات درون حلقه WHILE را می توان با Keyword های BREAK و CONTINUE، مدیریت و کنترل کرد.
Syntax استفاده از حلقه While بصورت زیر می باشد.
در این مثال ها از IF..ELSE هم استفاده شده است که اگر با IF..ELSE آشنایی ندارید، لطفا اول به لینک زیر مراجعه کنید و سپس مطلب را ادامه دهید.
در مثال زیر از حلقه while استفاده شده و تا زمانی که متغیر به عدد 5 نرسیده باشد، حلقه همین طور ادامه پیدا می کند.
فرض کنید هنگامی که مقدار متغیر برابر با 2 و 4 باشد، از پرینت آن می خواهیم جلوگیری کنیم. در این حالت می توانیم از عبارت CONTINUE استفاده کنیم.
دستورات درون حلقه 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 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 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
نمایش دیدگاه ها (0 دیدگاه)
دیدگاه خود را ثبت کنید: