Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql SQL-如何一次选择一行?_Mysql_Perl_Select - Fatal编程技术网

Mysql SQL-如何一次选择一行?

Mysql SQL-如何一次选择一行?,mysql,perl,select,Mysql,Perl,Select,我想执行一个特定的选择(正如我在sqldeveloper中测试的那样),该选择将检索大量数据(~350000行)。最后,我想将这些行写入一个文件 我打算编写一个PERL代码来实现这一点,我想知道是否有一种方法可以一次检索一行,将其写入我的输出文件并继续下一行 也就是说,我希望得到与我的原始选择相同的结果,但分为更小的块 谢谢 如果您认为可以多次执行查询,那么可以使用 SELECT .... FROM ... WHERE .... LIMIT 0, 100 // index_from, amoun

我想执行一个特定的选择(正如我在sqldeveloper中测试的那样),该选择将检索大量数据(~350000行)。最后,我想将这些行写入一个文件

我打算编写一个PERL代码来实现这一点,我想知道是否有一种方法可以一次检索一行,将其写入我的输出文件并继续下一行

也就是说,我希望得到与我的原始选择相同的结果,但分为更小的块


谢谢

如果您认为可以多次执行查询,那么可以使用

SELECT .... FROM ...
WHERE ....
LIMIT 0, 100 // index_from, amount
第一次,下次将金额添加到索引中

SELECT .... FROM ...
WHERE ....
LIMIT 100, 100

您可以使用
限制0,1
一次获取一条记录,但您有350k条记录。。。太疯狂了

如果您认为可以多次执行查询,那么可以使用

SELECT .... FROM ...
WHERE ....
LIMIT 0, 100 // index_from, amount
第一次,下次将金额添加到索引中

SELECT .... FROM ...
WHERE ....
LIMIT 100, 100
您可以使用
限制0,1
一次获取一条记录,但您有350k条记录。。。太疯狂了

创建一个循环

SELECT * FROM my_table LIMIT 0, 1
然后下一次增加你的限制

SELECT * FROM my_table LIMIT 1, 1
创建一个循环

SELECT * FROM my_table LIMIT 0, 1
然后下一次增加你的限制

SELECT * FROM my_table LIMIT 1, 1
你说:

我想知道是否有办法一次检索一行,将其写入我的输出文件并继续下一行

如果您试图将数据导出到一个文件中,您应该考虑使用.< /P> 它将比运行每个查询快得多。

您说过:

我想知道是否有办法一次检索一行,将其写入我的输出文件并继续下一行

如果您试图将数据导出到一个文件中,您应该考虑使用.< /P> 它将比运行每个查询快得多。

您只需要使用

$dbh->{'mysql_use_result'} = 1;
告诉MySQL驱动程序不要在内存中加载整个结果

接下来,您只需使用

while ( my $ary_ref  = $sth->fetchrow_arrayref ) {

....
}
你只需要使用

$dbh->{'mysql_use_result'} = 1;
告诉MySQL驱动程序不要在内存中加载整个结果

接下来,您只需使用

while ( my $ary_ref  = $sth->fetchrow_arrayref ) {

....
}

你试过什么?试图从数据库中获取较小的数据块通常是错误的想法。试着把你拥有的东西编码,看看它是如何工作的。你试过什么?试图从数据库中获取较小的数据块通常是错误的想法。只要试着编写你所拥有的代码,看看它是如何工作的。