這是一個場景。說我有一個名爲「日誌」的表,它看起來如下:如何在mysql中插入其他列值時繼承列值?
id | timestamp | batchid | data |
====================================
1 | time1 | 1 | 1000 |
2 | time2 | 1 | 1015 |
3 | time3 | 1 | 1018 |
4 | time4 | 1 | 1025 |
。 依此類推...
id設置爲自動遞增。時間戳和數據通過標準的mysql插入查詢定期插入。 現在batchid可以由用戶指定。 現在我想要的是在定期插入其他列數據的同時傳送批量數據。如果用戶更改了batchid,我將使用mysql UPDATE查詢來更改其最後一行中的數據,因此它將從那時起繼續該批處理標識。
例如...
目前我的表看起來像
id | timestamp | batchid | data |
====================================
1 | time1 | 1 | 1000 |
2 | time2 | 1 | 1015 |
3 | time3 | 1 | 1018 |
4 | time4 | 1 | 1025 |
現在用戶事件改變批次ID = 3,因此它看起來像...
id | timestamp | batchid | data |
====================================
1 | time1 | 1 | 1000 |
2 | time2 | 1 | 1015 |
3 | time3 | 1 | 1018 |
4 | time4 | 3 | 1025 |
然後定期插入保持以下...
id | timestamp | batchid | data |
====================================
1 | time1 | 1 | 1000 |
2 | time2 | 1 | 1015 |
3 | time3 | 1 | 1018 |
4 | time4 | 3 | 1025 |
5 | time5 | 3 | 1026 |
6 | time6 | 3 | 1028 |
隨身攜帶批量色譜柱。
任何想法?在創建一個mysql表或其他東西時,是否需要設置任何字段選項?
任何幫助將不勝感激。
這應該讓過去的batchid ----選擇batchid FROM日誌 其中timestamp> =( SELECT DATE(MAX(時間戳)) FROM日誌 ); --- – Tasos
我同意。甚至「SELECT batchid FROM log ORDER BY id DESC LIMIT 1;」會做。然後我可以在插入時使用批處理。但我想知道是否有辦法保留以前的價值?例如...自動遞增。你可以通過這個sorta查詢總是有最後的值,然後加1然後插入。任何幫助將不勝感激。 – dhruvvyas90