2012-02-06 102 views
0

如何循环遍历MySQL表的所有行并将其所有内容复制到另一个表并同时复制某些行多次更新并将其中一个值(时间)更新为几天后。日后将基于表中的另一个价值。 表a保存应该复制的数据。如果next_event为'0',则只添加一次。如果next_event是604800(应该等于一周),则该行应该添加多个时间,并将next_event值添加到日期中。在下面的例子中,我添加了event1和event3三次。如何将行从一个MySQL表复制到另一个并根据变量更新其中一个值

表一:

name  date    time  event  next_event 

name1  2012-06-02  18:00:00 event1  604800 
name1  2012-06-02  19:00:00 event2  0 
name1  2012-06-02  20:00:00 event3  604800 
name1  2012-06-02  21:00:00 event4  0 

表B:

name  date    time  event  next_event 

name1  2012-06-02  18:00:00 event1  604800 
name1  2012-06-02  19:00:00 event2  
name1  2012-06-02  20:00:00 event3  604800 
name1  2012-06-02  21:00:00 event4  
name1  2012-13-02  18:00:00 event1  604800 
name1  2012-13-02  20:00:00 event3  604800 
name1  2012-20-02  18:00:00 event1  604800 
name1  2012-20-02  20:00:00 event3  604800 

希望这是更SENCE。 谢谢。

+0

nope这没有任何意义,你发布表信息(截图会有帮助)是什么意思。 – 2012-02-06 10:36:56

回答

0

您还可以使用子查询,但在某些时候它变得难以跟踪,你会发现它更好地使用PHP代码合并(或制作一个使用光标的存储过程)

插入转换为B b2(col1,col2,col3)的值(选择 a1.col1,a1.col2,(选择a2.col3 +(选择这里的日期延迟...) from A a2 where A-criteria from A a1其中某些其他标准)

如果您的表格非常大,则在SQL中编写所有内容时可能会获得更好的性能。

相关问题