Mysql SQL-如何一次选择一行?
我想执行一个特定的选择(正如我在sqldeveloper中测试的那样),该选择将检索大量数据(~350000行)。最后,我想将这些行写入一个文件 我打算编写一个PERL代码来实现这一点,我想知道是否有一种方法可以一次检索一行,将其写入我的输出文件并继续下一行 也就是说,我希望得到与我的原始选择相同的结果,但分为更小的块Mysql SQL-如何一次选择一行?,mysql,perl,select,Mysql,Perl,Select,我想执行一个特定的选择(正如我在sqldeveloper中测试的那样),该选择将检索大量数据(~350000行)。最后,我想将这些行写入一个文件 我打算编写一个PERL代码来实现这一点,我想知道是否有一种方法可以一次检索一行,将其写入我的输出文件并继续下一行 也就是说,我希望得到与我的原始选择相同的结果,但分为更小的块 谢谢 如果您认为可以多次执行查询,那么可以使用 SELECT .... FROM ... WHERE .... LIMIT 0, 100 // index_from, amoun
谢谢 如果您认为可以多次执行查询,那么可以使用
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 ) {
....
}
你试过什么?试图从数据库中获取较小的数据块通常是错误的想法。试着把你拥有的东西编码,看看它是如何工作的。你试过什么?试图从数据库中获取较小的数据块通常是错误的想法。只要试着编写你所拥有的代码,看看它是如何工作的。