2

私はDBI selectall_arraymysqlからすべてのデータを取得するために使用しています。私のクエリは、すべての行に対して 1 列を返します。ただし、selectall_array関数は、以下にリストされているように、各行の配列参照の配列を返します

$VAR1 = [
          '1.ptmp'
        ];
$VAR2 = [
          'e1.ptmp'
        ];
$VAR3 = [
          's2.ptmp'
        ];
$VAR4 = [
          'sw1.ptmp'
        ];
$VAR5 = [
          'w1.ptmp'
        ];

私が望むのは、すべてのドメインを単一の配列 (参照なし) に抽出する方法ですか、または参照なしでデータの完全な配列を返す DBI 関数はありますか? すべてのデータをループしたり、while ループで実行したりしたくありませんfetchrow_array。可能であればすべてを行う単一のステートメントをお探しですか?

以下の私のコードを見てください:

my @mysqldata = $dbh->selectall_array('SELECT `domain` FROM dfs WHERE `id` IN ('.join(',',('?')x(scalar(@params))).')', {}, @params);
my @minus = array_minus( @all, @mysqldata );
4

2 に答える 2