加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl – fetchall_arrayref中的foreach值

发布时间:2020-12-16 06:06:17 所属栏目:大数据 来源:网络整理
导读:我正在尝试为fetchall_arrayref中的每个值执行一个foreach循环,并且遇到了一些麻烦. 我有: my $list = $sth-fetchall_arrayref({});print Dumper($list); 这给了我: $VAR1 = [ { 'ID_NUMBER' = '123' },{ 'ID_NUMBER' = '456' },{ 'ID_NUMBER' = '5666' },
我正在尝试为fetchall_arrayref中的每个值执行一个foreach循环,并且遇到了一些麻烦.

我有:

my $list = $sth->fetchall_arrayref({});
print Dumper($list);

这给了我:

$VAR1 = [
          {
            'ID_NUMBER' => '123'
          },{
            'ID_NUMBER' => '456'
          },{
            'ID_NUMBER' => '5666'
          },{
            'ID_NUMBER' => '45645'
          },{
            'ID_NUMBER' => '23422'
          }
        ];

我不知道如何格式化我的foreach循环打印每个id_number的值.最终我想用每个值运行一个查询,但是一旦我开始工作,我就可以想出来.

谢谢你的帮助.

解决方法

您应该使用 fetchrow_hashref而不是单独执行每个操作.这将使它更具可读性,并且从数据库的角度来看它不会影响性能.

while (my $res = $sth->fetchrow_hashref) {
  print Dumper $res;
  $sth2->execute($res->{ID_NUMBER});
}

如果你想用fetchall_arrayref做它,它会像这样工作:

my $list = $sth->fetchall_arrayref({});
foreach my $res (@{ $list }) {
  $sth2->execute($res->{ID_NUMBER});
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读