sql >> データベース >  >> RDS >> Mysql

クエリ結果を.csv形式で保存するために、1つのクエリで2つのSQLクエリを実行します

    1つのクエリとして実行する必要はありません。通常、1つの複雑なクエリではなく、多くの小さな単純なクエリを使用することをお勧めします。実際、コードを更新してさらに多くのクエリを含めることをお勧めします。たとえば、「notexists()」の内容はサブクエリとして実行しないでください。パフォーマンスを向上させるために完全に別個のクエリにする必要があります。

    2つの部分があります。最初に、CSVダウンロードをトリガーするために正しいHTTPヘッダーを送信する必要があります。

    header('Content-type: application/vnd.ms-excel');
    header('Content-Disposition: attachment; filename="export.csv";' );
    

    次に、データをCSV形式で印刷します。

    while ($row = mysql_fetch_array($myQuery)) {
      $first = true;
      foreach ($row as $cell) {
        if ($first)
          $first = false;
        else
          print ',';
    
        print '"' . addslashes($cell) . '"';
      }
      print "\n";
    }
    

    注:CSVは不適切な形式であり、これはMicrosoftExcelの一部のエディションでのみ機能します。ユーザーが住んでいる場所(例:ヨーロッパ)によっては、正しく機能しない場合があります。ただし、Excelのほとんどのエディションでは、上記は機能します。 CSVの使用を避ける以外に良い解決策はありません。




    1. 最後に挿入されたIDENTITYを取得します

    2. 結果セットを閉じた後、Oracleはカーソルを削除しません

    3. %NOTFOUNDはフェッチ後にnullを返すことができますか?

    4. 未使用のものでお金を稼ぐ:シェアリングエコノミーデータモデル