把实际要解决的问题说明一下才能才能得到具体的思路,就是说你为何要这样做,俩行数据之间有什么连系?

解决方案 »

  1.   

    比如说是一个学生的成绩
    学号  32                 学号  32   数学  70
    数学  70     变成        学号  33   数学   70
    学好  33
    数学  70
    就是把一个表改一下
      

  2.   

    凭什么说学号32的成绩就是70呢?
      

  3.   

    建这个表的时候是这样建的
    每个成绩就是对应上面学号的成绩
      

  4.   

    DECLARE @i AS BIGINT
    DECLARE @Name AS CHAR(10)
    DECLARE @Number AS CHAR(10)
    DECLARE @OldName AS CHAR(10)
    DECLARE @OldNumber AS CHAR(10)SET @i = 0
    SET @Name = ''
    SET @Number = ''
    SET @OldName = ''
    SET @OldNumber = ''DECLARE authors_cursor CURSOR FOR
    SELECT * FROM tbOPEN authors_cursor-- Perform the first fetch.
    FETCH NEXT FROM authors_cursor
    INTO @Name, @NumberCREATE TABLE #t(A CHAR(10), B CHAR(10), C CHAR(10), D CHAR(10))WHILE @@FETCH_STATUS = 0
    BEGIN
       SET @i = @i + 1
       IF @i % 2 = 0
       BEGIN
          INSERT INTO #t VALUES (@OldName, @OldNumber, @Name, @Number)
       END
       SET @OldName = @Name
       SET @OldNumber = @Number
       FETCH NEXT FROM authors_cursor
       INTO @Name, @Number
    ENDCLOSE authors_cursor
    DEALLOCATE authors_cursorSELECT * FROM #tDROP TABLE #t
      

  5.   

    我十分的不明白你为什么如此建表
    你可以建为学号   数学    语文  ……
    32     70      60    ……
    33     70      60    ……
    34     70      20    ……
      

  6.   


    我不明白你为什么要如此建表,你可以学号     数学     语文 
    32       70       ……
    33       70       ……
      

  7.   

    我也同一楼上的意见,表建得有问题,至少不符合常理,难道有什么他的苦衷????
      

  8.   

    用游标建立一个临时表,把两行数据插入临时表(一条数据),