MySQL 将多个行条目复制到另一个位置

MySQL copy multiple row-entries to another position

我想将特定行和特定日期的大量值复制到同一行,但另一个日期。我已经尝试使用 SQL UPDATE SET 函数和两个不同的表,但 SET 只会使用第一个值并将其复制到正确的日期列。

这张图你看结果:

这是我尝试过的查询之一:

UPDATE Test_tab t
SET t.testValue = 
    (SELECT testValue
    FROM Test_tab 
    WHERE testDate > '2015-10-01' AND testDate < '2015-10-31'
        LIMIT 1)
WHERE t.testDate  > '2015-11-01' AND t.testDate  < '2015-11-31'

你可以这样试试

CREATE PROCEDURE your_proc()
BEGIN 
 DECLARE cont INTEGER; 
 SET cont = 0;
 SET max = SELECT count(*) FROM test_tab;
  WHILE cont < max DO 
   UPDATE Test_tab t SET t.testValue =(SELECT testValue FROM Test_tab WHERE testDate >'2015-10-01' AND testDate <'2015-10-31'
   LIMIT cont, 1) WHERE t.testDate > '2015-11-01' AND t.testDate < '2015-11-31'
   SET cont = cont + 1; 
  END WHILE; 
END;