我的数据库中有这么多的值

时间:2015-04-03 09:42:45

标签: mysql sql database drupal drupal-7

我的数据库中的表格中有 4,000,000 行,我怎么能把它们100 by 100

3 个答案:

答案 0 :(得分:0)

SQL Server 中,您可以使用OFFSET FETCH

在下面的示例中,它将从0(1-100)开始选择100行。如果要选择接下来的100行(101-200),可以更改为OFFSET 100等等。

SELECT * FROM YourTable
ORDER BY Id
OFFSET 0 ROWS FETCH NEXT 100 ROWS ONLY

答案 1 :(得分:0)

SELECT * FROM YourTable
ORDER BY Id
LIMIT 0,100

和下次通话

SELECT * FROM YourTable
ORDER BY Id
LIMIT 100,100

然后

SELECT * FROM YourTable
ORDER BY Id
LIMIT 200,100

当然,不要在代码中重复您的查询10 000次,而是将其放入for循环中。

答案 2 :(得分:0)

当你的问题被Drupal标记时,我会假设你想要一个drupal答案 您可以使用函数db_query_range 例如。

$result = db_query_range('SELECT n.nid, n.title, n.created
  FROM {node} n WHERE n.uid = :uid
  ORDER BY n.created DESC', 0, 100, array(':uid' => $uid));
foreach ($result as $record) {
  // Perform operations on $record->title, etc. here.
}