2012-02-06 104 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中編寫所有內容時可能會獲得更好的性能。

相關問題