DECLARE @c0 INT
     DECLARE @c1 INT
     DECLARE @c2 INT
     DECLARE @c3 INT  
     DECLARE @c4 INT
     DECLARE @c5 INT      DECLARE @i INT
     DECLARE @j INT      declare @sql varchar(8000)
    SELECT @j=0
    select @i=10    WHILE @j < @i
    BEGIN
    set @sql ='SELECT @c'+ cast(@j as varchar) +'=(SELECT COUNT(*) FROM 表 WHERE 条件=@j)'
    exec (@sql)
    SELECT @j=@j+1
    END

解决方案 »

  1.   

    DECLARE @c0 INT
         DECLARE @c1 INT
         DECLARE @c2 INT
         DECLARE @c3 INT  
         DECLARE @c4 INT
         DECLARE @c5 INT      DECLARE @i INT
         DECLARE @j INT      declare @sql varchar(8000)
        SELECT @j=0
        select @i=10    WHILE @j < @i
        BEGIN
        set @sql ='SELECT @c'+ cast(@j as varchar) +'=(SELECT COUNT(*) FROM 表 WHERE 条件=@j)'
        print @sql
        --exec (@sql)
        SELECT @j=@j+1
        END结果是
    SELECT @c0=(SELECT COUNT(*) FROM 表 WHERE 条件=@j)
    SELECT @c1=(SELECT COUNT(*) FROM 表 WHERE 条件=@j)
    SELECT @c2=(SELECT COUNT(*) FROM 表 WHERE 条件=@j)
    SELECT @c3=(SELECT COUNT(*) FROM 表 WHERE 条件=@j)
    SELECT @c4=(SELECT COUNT(*) FROM 表 WHERE 条件=@j)
    SELECT @c5=(SELECT COUNT(*) FROM 表 WHERE 条件=@j)
    SELECT @c6=(SELECT COUNT(*) FROM 表 WHERE 条件=@j)
    SELECT @c7=(SELECT COUNT(*) FROM 表 WHERE 条件=@j)
    SELECT @c8=(SELECT COUNT(*) FROM 表 WHERE 条件=@j)
    SELECT @c9=(SELECT COUNT(*) FROM 表 WHERE 条件=@j)