================================================================================================================================================================= WHILE LOOP ================================================================================================================================================================= => LOOPS ARE USED TO EXECUTE STATEMENT/STATEMENTS REPEATEDLY MULTIPLE TIMES WHILE CONDITION------------EITHER TRUE OR FALSE BEGIN STATEMENTS END => THE CONDITION SHOULD RESULT IN TRUE OR FALSE => IF CONDITION IS TRUE THE LOOP CONTINUES => IF CONDITION IS FALSE THE LOOP TERMINATES --PRINT 'HELLO WORLD' --PRINT 'HELLO WORLD' --PRINT 'HELLO WORLD' --PRINT 'HELLO WORLD' --PRINT 'HELLO WORLD' --PRINT 'HELLO WORLD' --PRINT 'HELLO WORLD' --PRINT 'HELLO WORLD' --PRINT 'HELLO WORLD' --PRINT 'HELLO WORLD' => PRINT HELLO WORLD 10 TIMES DECLARE @COUNT INT ;------INITIALIZATION OF A VARIABLE AT THE SAME TIME WE HAVE DECLARED THE VARIABLE SET @COUNT =1 ; WHILE @COUNT <=10-----------EXIT CONDITION,,,,,,,,,,,,,,,IN THIS CASE THIS CONDITION WILL ALWAYS TRUE AND THAT IS WHY IT IS NOT GOING TO BE EXIT BEGIN PRINT 'HELLO WORLD'---------------------------INFINITE LOOP SET @COUNT = @COUNT + 1------------ END NOTE ===> ENSURE TO MENTION A STATEMENT WHICH CAN CAUSE CONDITION TO BECOME FALSE AS PER YOUR REQUIREMENT. IF CONDITION NEVER BECOMES FALSE THEN IT WILL BECOME AN INFINITE LOOP AND WILL NEVER TERMINATE. => WRITE A PROGRAM TO PRINT NUMBERS FROM 1 TO 10 DECLARE @I INT = 1 WHILE @I<=10-----------------EXIT CONDITION FOR THE LOOP BEGIN PRINT @I SET @I = @I+1 END; => WRITE A PROGRAM TO PRINT 1,2,3,4,5,7,8,9,10 CONTINUE --- THIS STATEMENT IS USED TO SKIP CURRENT ITERATION OR TO SKIP THE STATEMENTS --- MENTIONED AFTER THE CONTINUE FOR THE CURRENT ITERATION. ================================================================================================================================================================= --WRONG---- INFINITE LOOP DECLARE @I INT = 1 WHILE @I<=10 BEGIN IF @I=6 -------------------@I=1, @I=2 ,@I=5,,,,,6=6 CONTINUE PRINT @I SET @I = @I+1 END 1 2 3 4 5 --CORRECT------------ DECLARE @I INT = 0 WHILE @I<10 BEGIN SET @I = @I+1 IF @I=6 BEGIN CONTINUE END print @I END ================================================================================================================================================================= BREAK STATEMENT -- THIS STATEMENT IS USED TO GET OUT OF LOOP AS PER OUR REQUIREMENT -- THIS STATEMENT EXIT THE WHILE LOOP IMMEDIATELY WHEN BREAK STATEMENT -- IS ENCOUNTERED. => GET OUT OF THE LOOP AFTER 5 DECLARE @I INT =1 WHILE @I<=10 BEGIN PRINT @i IF @I = 5 BEGIN BREAK END SET @I = @I+1 END ===RESULT: 1 2 3 4 5 ================================================================================================================================================================== WRITE A PROGRAM TO INPUT STRING AND PRINT IN FOLLOWING PATTERN NAME --'HARSHIT' EXPECTED --OUTPUT H A R S H I T --SELECT LEN('HARSHIT') --7 HARSHIT HARSHIT HARSHIT HARSHIT HARSHIT HARSHIT HARSHIT STARTING POSITION,NO OF CHARATERS FROM THE STARTING POSITION SELECT SUBSTRING('HARSHIT',1,1) H SELECT SUBSTRING('HARSHIT',2,1) A SELECT SUBSTRING('HARSHIT',3,1) R Completion time: 2024-09-10T10:30:27.4373034+05:30 DECLARE @S VARCHAR(20), @X INT = 1 SET @S = 'HARSHIT' WHILE @X <= LEN(@S)----SPECIFY SOME EXIT CONDITION , 1<=7,,,2<=7 BEGIN PRINT ' ' PRINT SUBSTRING('HARSHIT',@X,1) SET @X = @X+1 END H A R S H I T Completion time: 2024-09-10T10:38:12.2343957+05:30 Completion time: 2024-09-10T10:36:44.3097805+05:30 DECLARE @S VARCHAR(20), @X INT = 1 SET @S = 'HARSHIT' WHILE @X <= LEN(@S) BEGIN PRINT SUBSTRING(LEFT('HARSHIT',@X),@X,1) SET @X = @X+1 END ================================================================================================================================================================== WRITE A PROGRAM TO INPUT STRING AND PRINT IN FOLLOWING PATTERN NAME --'HARSHIT' EXPECTED --OUTPUT H HA HAR HARS HARSH HARSHI HARSHIT DECLARE @S VARCHAR(20), @X INT = 1 SET @S = 'HARSHIT' WHILE @X <= LEN(@S)----SPECIFY SOME EXIT CONDITION , 1<=7,,,2<=7 BEGIN PRINT SUBSTRING('HARSHIT',1,@X) SET @X = @X+1 END ================================================================================================================================================================== DECLARE @S VARCHAR(20), @X INT = 1 SET @S = 'HARSHIT' WHILE @X <= LEN(@S) BEGIN PRINT SUBSTRING('HARSHIT',1,@X) SET @X = @X+1 END ================================================================================================================================================================== DECLARE @S VARCHAR(20), @X INT = 1 SET @S = 'HARSHIT' WHILE @X <= LEN(@S) BEGIN PRINT SUBSTRING(LEFT('HARSHIT',@X),@X,1) SET @X = @X+1 END ---------------------------PRINT THE HARSHIT IN THE REVERSE ORDER 1 CHARACTER PER LINE ================================================================================================================================================================== T I H S R A H SELECT RIGHT('HARSHIT',4) T IT HIT SHIT DECLARE @S VARCHAR(20), @X INT = 1 SET @S = 'HARSHIT' WHILE @X <= LEN(@S) BEGIN PRINT SUBSTRING(RIGHT('HARSHIT',@X),1,1) SET @X = @X+1 END ------------------------------------------------------------------------------------------------------------------------------------------------------------------ T IT HIT SHIT RSHIT ARSHIT HARSHIT DECLARE @S VARCHAR(20), @X INT = 1 SET @S = 'HARSHIT' WHILE @X <= LEN(@S) BEGIN PRINT RIGHT('HARSHIT',@X) SET @X = @X+1 END ================================================================================================================================================================== ================================================================================================================================================================== PROGRAM TO PRINT FOLLOWING PATTERN * ** *** **** ***** SELECT REPLICATE('*',3) *** **** ***** DECLARE @X INT = 1 WHILE @X <= 5 BEGIN PRINT REPLICATE('*',@X) SET @X = @X+1 END ====================================================================================================================================================================================== ***** **** *** ** * DECLARE @X INT = 5 WHILE @X >= 1 BEGIN PRINT REPLICATE('*',@X) SET @X = @X-1 END ====================================================================================================================================================================================== ======================================================================================================================================================================================