2013-09-25 60 views
0

我有兩個表tableA和tableB,我必須從tableA插入數據到tableB。首先,我將從tableA中選擇數據,然後插入到tableB中。如何選擇數據庫中的下一條記錄?

$sq = $db->prepare("SELECT userid, balance from plus_wallet order by id desc 
    limit 0,100"); 

,並以此類推,直到$sq->close();

$sql = $db->prepare("INSERT INTO `plus_user_wallet` 
    (`userid`, `balance`, `update_time`) 
    VALUES(?,?,NOW() + INTERVAL 45000 second)"); 

,並以此類推,直到$sq->close();

現在我的問題是:因爲我有記錄數說了,100,我想選擇100個記錄在一段時間,然後插入它們,再次選擇100條記錄並執行代碼。我想知道我該怎麼做。如何在第一次執行代碼後選擇下一個100條記錄。

回答

0

首先,你可以使用INSERT INTO ... SELECT ... FROM語法和LIMIT條款

INSERT INTO `plus_user_wallet` (`userid`, `balance`, `update_time`) 
SELECT userid, balance, NOW() + INTERVAL 45000 SECOND 
    FROM plus_wallet 
ORDER BY id DESC 
LIMIT 0, 100 

其次使用OFFSET然後插入一個100行你改變抵消LIMIT

LIMIT 100, 100 
     ^^^ 
+0

@VishalParkash有沒有幫助?你的問題需要更多幫助嗎? – peterm

相關問題