sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur kopierar jag data från en tabell till en annan i postgres med kopieringskommandot

Du kan inte enkelt göra det, men det finns inte heller något behov av att göra det.

CREATE TABLE mycopy AS
SELECT * FROM mytable;

eller

CREATE TABLE mycopy (LIKE mytable INCLUDING ALL);

INSERT INTO mycopy
SELECT * FROM mytable;

Om du bara behöver välja några kolumner eller ändra ordning på dem kan du göra så här:

INSERT INTO mycopy(colA, colB)
SELECT col1, col2 FROM mytable;

Du kan också göra en selektiv pg_dump och återställa endast måltabellen.



  1. PIVOT-fråga på distinkta poster

  2. Kommaseparerade värden med samma antal rader

  3. MySQL-valsfråga med variabelkolumnnamn

  4. Oväntad effekt av filtrering på resultat från crosstab()-fråga