0

テキストファイルにエクスポートされたmysqlテーブルから1行からすべてのデータを取得するにはどうすればよいですか?ただし、このようにフォーマットされています:

  • 1 つのフィールドを別のフィールドの下に、1 行に 1 つ
  • 私はそのデータを断片に分割し、たとえば50行をfile1.txtに保存し、次の50行をfile2.txtに保存し、最後まで保存したいと思います(丸め数ではないため、最後のファイルの行数はおそらく少なくなります)
  • 同一のエントリをコピーしない/重複を削除する

...phpスクリプトを使用するか、mysqlコンソールのみを使用しますか?

4

2 に答える 2

2

コマンドラインクライアントを使用して、次のようにします。

$ mysql --user=XXX --password=XXX --batch --skip-column-names \
  -e "SELECT userid, displayname FROM Users" stackoverflowdb | \
split -l 50 -a 5 - "result."
于 2009-08-07T21:35:52.060 に答える
0

私は人々の宿題/仕事をするのが嫌いですが、これはあまりにも簡単です.

    <?

    $row = mysql_fetch_array($rc);

    $nodupes = array();
    foreach ($row as $field)
    {
        $nodupes[$field] = $field;
    }

    $i = 1;
    $filenum = 0;
    $line = 50 ; // create new file ever 50 lines
            $text = "";
    foreach($nodupes as $field)
    {
        $i++;
        $text .= "$field\n";

        // to split into bite size peices
        if ($i % $line == 0)
        {
            $filenum++;
            $filename = "myfile_$filenum.txt";
            file_put_contents($filename,$text);
            $text = "";
        }
    }
    $filenum++;
    $filename = "myfile_$filenum.txt";
    file_put_contents($filename,$text);
    ?>

だから今日食べて、別の日に釣りを学びましょう!

于 2009-08-07T21:30:21.930 に答える