--创建存储数据临时表

  CREATE TABLE Temp_Dep(TEMP_depid varchar(50),TEMP_depname VARCHAR(50),TEMP_NAME varchar(5000))

   --向临时表中插入前三列数据

   INSERT INTO Temp_Dep(TEMP_depid,TEMP_depname) SELECT DISTINCT A.DEPT_NO,B.DEPT_NOTE FROM dbo.HES_EMPLOYEE A JOIN dbo.HES_DEPT

  B ON A.DEPT_NO = B.DEPT_NO WHERE STATUS IN ('zaizhi','shiyong')

    --创建查询小组编号的游标

    DECLARE Somedepid_cusor CURSOR FOR

    SELECT DISTINCT TEMP_depid FROM Temp_Dep

   OPEN  Somedepid_cusor

   FETCH NEXT FROM Somedepid_cusor INTO @TEMP_depid

   WHILE @@FETCH_STATUS=0

   BEGIN

        --创建查询员工数据游标

        SET @TEMP_SomeNAME=''

        DECLARE SomeNAME_cusor CURSOR FOR

         SELECT NAME FROM dbo.HES_EMPLOYEE WHERE DEPT_NO=@TEMP_depid AND STATUS IN ('zaizhi','shiyong')

        OPEN  SomeNAME_cusor

        FETCH NEXT FROM SomeNAME_cusor INTO @TEMP_NAME

        WHILE @@FETCH_STATUS=0

        BEGIN

            SET  @TEMP_SomeNAME=RTRIM(@TEMP_SomeNAME)+RTRIM(@TEMP_NAME)+','

            FETCH NEXT FROM SomeNAME_cusor INTO @TEMP_NAME

        END

        CLOSE SomeNAME_cusor

        DEALLOCATE SomeNAME_cusor

       --更新数据

      UPDATE dbo.Temp_Dep SET TEMP_NAME=@TEMP_SomeNAME WHERE TEMP_depid=@TEMP_depid

      FETCH NEXT FROM Somedepid_cusor INTO @TEMP_depid

   END

   CLOSE Somedepid_cusor

   DEALLOCATE Somedepid_cusor

  --查询数据

   SELECT * FROM Temp_Dep

 

相关文章:

  • 2021-08-09
  • 2021-08-30
  • 2022-12-23
  • 2022-12-23
  • 2021-11-17
  • 2022-12-23
  • 2021-06-04
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-06-03
  • 2021-07-03
  • 2022-12-23
  • 2021-06-25
  • 2021-08-20
  • 2021-12-05
相关资源
相似解决方案