如何选择数据库中的下一条记录?

时间:2013-09-25 07:13:56

标签: mysql

我有两个表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条记录。

1 个答案:

答案 0 :(得分:0)

首先,您可以使用INSERT INTO ... SELECT ... FROM语法,然后在OFFSET子句中使用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

然后插入下一行100行,在LIMIT中更改OFFSET

LIMIT 100, 100
      ^^^