Typumwandlung

Hallo zusammen,

ich möchte gerne eine Zeile aus einer Tabelle in eine andere Tabelle einfügen. Augenscheinlich haben alle Spalten den Typ varchar. Varchar ist auch der gewünschte Spaltentyp.

INSERT INTO schema1.tabelle1 ( spalte1, spalte , spalte3 )
SELECT ( spalte1, spalte , spalte3 )
FROM schema1.tabelle2 WHERE gid = 5813;

FEHLER: Spalte »spalte1« hat Pseudotyp record
SQL Status:42P16



sylvia

Laß die Klammern beim Select weg.

test=# create table s1 (spalte1 text, spalte2 text);
CREATE TABLE
Time: 6,993 ms
test=*# create table s2 (id int,spalte1 text, spalte2 text);
CREATE TABLE
Time: 22,912 ms
test=*# copy s2 from stdin;
Enter data to be copied followed by a newline.
End with a backslash and a period on a line by itself.
>> 1    zeile1_spalte1  zeile1_spalte2
>> 2    zeile2_spalte1  zeile2_spalte2
>> \.
Time: 32653,354 ms
test=*# insert into s1 select spalte1, spalte2 from s2 where id=1;
INSERT 0 1
Time: 0,526 ms
test=*# select * from s1;
    spalte1     |    spalte2
----------------+----------------
 zeile1_spalte1 | zeile1_spalte2
(1 row)

Andreas