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

postgresでテーブル(インデックスを含む)をコピーします

    [CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name
        [ (column_name [, ...] ) ]
        [ WITH ( storage_parameter [= value] [, ... ] ) | WITH OIDS | WITHOUT OIDS ]
        [ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]
        [ TABLESPACE tablespace ]
        AS query][1]  
    

    これが例です

    CREATE TABLE films_recent AS
      SELECT * FROM films WHERE date_prod >= '2002-01-01';
    

    最初から新しいテーブルを作成するもう1つの方法は、を使用することです

        CREATE TABLE films_recent (LIKE films INCLUDING INDEXES);  
    
        INSERT INTO films_recent
             SELECT *
               FROM books
              WHERE date_prod >= '2002-01-01';  
    

    2番目の方法を使用する場合、Postgresqlにはテーブルスペースの問題を修正するためのパッチがあります



    1. Docker内のホストのlocalhostとpostgresの違い

    2. 人々がSaaSに移行している上位3つの理由

    3. SQLServerフェールオーバークラスターのインストール-4

    4. pg gemのインストールに失敗すると、mkmf.rbはrubyのヘッダーファイルを見つけることができません(Mac OSX 10.6.5)