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

SQLite-データをCSVファイルにエクスポート

    SQLiteデータベースからCSVファイルにデータをエクスポートできます。テーブル全体またはクエリの結果をエクスポートできます。

    データをCSVファイルにエクスポートするには、.onceを使用します コマンドの後に、ファイルに書き込むファイルのパス/名前を続けます。

    テーブルからCSVファイルへ

    この例では、 Artists のコンテンツをエクスポートします テーブルをCSVファイルに変換:

    .header on
    .mode csv
    .once /Users/quackit/sqlite/dumps/artists.csv
    SELECT * FROM Artists;

    コードの説明:

    1. まず、ヘッダーを有効にします。これにより、列名がCSVファイルのヘッダーとして使用されます。これはオプションです。ヘッダーを無効にすると、CSVファイルにはヘッダーが含まれなくなります。
    2. 次に、csvモードを有効にします( .mode csv
    3. 次の行(.onceで始まります )出力がCSVファイルに書き込まれます。
    4. 最後に作成するのは実際のクエリ(この場合はSELECT)です。 テーブルのステートメント。)

    そのコードを実行すると、次の内容のCSVファイルが作成されます。

    ArtistId,ArtistName,Bio
    1,"Joe Satriani",
    2,"Steve Vai",
    3,"The Tea Party",
    4,Noiseworks,
    5,"Wayne Jury",
    6,"Mr Percival",
    7,"Iron Maiden",
    8,Atmasphere,"Australian jazz band centred around polyrhythms."
    9,"Ian Moss",
    10,Magnum,
    13,Primus,
    14,"Pat Metheny",
    15,"Frank Gambale",
    16,"Mothers of Invention",
    

    クエリに参加

    1つのテーブルを出力するだけではありません。任意のクエリを出力できます。これは、2つのテーブルからデータを選択し、その結果を1つのCSVファイルに出力するクエリです。

    .header on
    .mode csv
    .once /Users/quackit/sqlite/dumps/catalog.csv
    SELECT AlbumId, AlbumName, ArtistName  
    FROM Artists AS a 
      INNER JOIN Albums AS b 
      ON a.ArtistId = b.ArtistId
    ORDER BY ArtistName;

    これにより、次の内容のCSVファイルが作成されます。

    AlbumId,AlbumName,ArtistName
    1,Killers,"Iron Maiden"
    2,Powerslave,"Iron Maiden"
    12,"Somewhere in Time","Iron Maiden"
    3,"Surfing with the Alien","Joe Satriani"
    10,"Flying in a Blue Dream","Joe Satriani"
    11,"Black Swans and Wormhole Wizards","Joe Satriani"
    6,"Out of the Loop","Mr Percival"
    7,"Suck on This",Primus
    8,"Pork Soda",Primus
    9,"Sailing the Seas of Cheese",Primus
    

    CSVファイルを自動的に開く

    .systemを使用できます Excel、OpenOffice、LibreOfficeなどのコンピュータのスプレッドシートプログラムでファイルを自動的に開くコマンド。

    .systemを配置します 最後の行のコード(SELECTの後) 声明)。このように:

    .header on
    .mode csv
    .once /Users/quackit/sqlite/dumps/catalog.csv
    SELECT AlbumId, AlbumName, ArtistName  
    FROM Artists AS a 
      INNER JOIN Albums AS b 
      ON a.ArtistId = b.ArtistId
    ORDER BY ArtistName;
    .system open /Users/quackit/sqlite/dumps/catalog.csv

    使用する正確なコードは、オペレーティングシステムによって異なります。

    • Windowsでは、.systemを使用します その後にファイル名が続きます。
    • Macでは、.system open を使用します その後にファイル名が続きます。
    • LinuxおよびUnixシステムでは、.systemを使用します その後にファイルを開くプログラムの名前が続き、その後にファイル名が続きます。例:.system libreoffice /dumps/file.csv

    テーブルまたはデータベースをダンプする

    .dumpを使用して、テーブルまたはデータベース全体をASCIIテキストファイルにダンプすることもできます。 コマンド。


    1. PostgreSQLでの一括/バッチ更新/アップサート

    2. OracleのPLSQLレコードとは

    3. ステップバイステップR12.2.6VirtualBoxへのEBSのインストール

    4. SQLOperationsStudioを使用してMacでSQLServerデータベースを復元する方法