DELETE FROM  表单2
INSERT 
        INTO 表单2(表单2.总计, 表单2.姓名, 表单2.部门, 
              表单2.明细)
                  SELECT COUNT(*) AS 总计, 姓名, 部门, 明细 
                FROM 表单1
                GROUP BY 姓名, 部门, 明细
                HAVING (COUNT(*) > 1)
用这条语句可以查询出相同的姓名\部门\和明细,在表单1中有重复记录,每条记录中都有日期(日期不同),我如何才能将表单1中每条记录的日期分别赋给表单2中的日期1、日期2、日期3、.....中呢?日期1记录表单1第一次重复记录的日期,日期2记录第二次.. 我表单2中直到日期7就可以了,不必记录太多.

解决方案 »

  1.   

    大家看这样可不可以,找出姓名为eidt.text的在表单1中的日期记录,第一条赋给a,第二条赋给b,第三条......然后连表单2 set 日期1:=a .....    请大家看看如果这样该怎么写呀具体???
      

  2.   

    或者是用SQL语句直接写出来  将每次的日期给日期1 日期2.. 然后我再用INSERT  INTO
      

  3.   

    用2个SQL语句。
    第1 个,就是你所写的;
    第2 个,循环表2中的数据,然后查找表1,再对表2 进行 update
      

  4.   

    参考这个  USE Northwind
    GOCREATE TABLE Pivot
    ( Year      SMALLINT,
      Quarter   TINYINT, 
      Amount      DECIMAL(2,1) )
    GO
    INSERT INTO Pivot VALUES (1990, 1, 1.1)
    INSERT INTO Pivot VALUES (1990, 2, 1.2)
    INSERT INTO Pivot VALUES (1990, 3, 1.3)
    INSERT INTO Pivot VALUES (1990, 4, 1.4)
    INSERT INTO Pivot VALUES (1991, 1, 2.1)
    INSERT INTO Pivot VALUES (1991, 2, 2.2)
    INSERT INTO Pivot VALUES (1991, 3, 2.3)
    INSERT INTO Pivot VALUES (1991, 4, 2.4)
    GO下面是用于创建旋转结果的 SELECT 语句:SELECT Year, 
        SUM(CASE Quarter WHEN 1 THEN Amount ELSE 0 END) AS Q1,
        SUM(CASE Quarter WHEN 2 THEN Amount ELSE 0 END) AS Q2,
        SUM(CASE Quarter WHEN 3 THEN Amount ELSE 0 END) AS Q3,
        SUM(CASE Quarter WHEN 4 THEN Amount ELSE 0 END) AS Q4
    FROM Northwind.dbo.Pivot
    GROUP BY Year
    GO至于次数,
    可另写语句