ممکن است در Sql نیاز به تکرار یک کد (حلقه) داشته باشید. دو مثال را با هم بررسی میکنیم؛ اولی ایجاد حلقه با استفاده از متغیر و دومی با استفاده از داده های جدول دیگر
برای مثال اول از یک تا ده را در یک فیلد یک جدول insert میکنیم:
DECLARE @No int
SET @No = 1
WHILE @No<= 10
BEGIN 
    --------------
    INSERT INTO Test  (No, Name)
	           VALUES  (@No,'MyName')
    --------------
    set @No= @No+1
END
و برای مثال دوم به ازای هر فیلد ID در جدول Test در جدول Test2 فیلد TestID را insert می کنیم
DECLARE @max int
DECLARE @min int
SET @min = (SELECT min(ID) FROM dbo.Test)
SET @max = (SELECT max(ID) FROM dbo.Test)
WHILE @min <= @max
BEGIN 
    DECLARE @currnetID int
    SET @currnetID =  (SELECT ID FROM dbo.Test where id=@min)
    if @currnetID>0
    BEGIN
       --------------
       INSERT INTO Test2  (TestID, Name)
                  VALUES  (@currnetID,'MyName')
       --------------
    END
    set @min = @min+1
END
                    دیدگاه ها:
                    ارسال دیدگاه
                
                        ناصر
                                    سلام مثال کاربردی بود از حلقه اگر امکان داره یک مثال دیگه از حلقه بدید که داده ها از جدول باشد و متغییر علاوه بر int دارای متغییر از نوع nvarchar باشد. با تشکر وسپاس.
                                
                            نازی
                                    خیلی کاربردیه، لایک  . ممنون از مطالب عالی
                                
                            
                    برچسب ها
                
                
            
