Truyền của bạn sai, bạn không thể hủy text
.
Hãy thử
INSERT INTO mytable (x, y)
SELECT
unnest('{x1, x2, x3}' :: TEXT []),
unnest('{y1, y2, y3}' :: TEXT []);
Lưu ý rằng hình thức lựa chọn này hoạt động kỳ lạ nếu cả hai mảng không có cùng độ dài.
Hàm unnest trong postgres 9.4+ cho phép bạn mở rộng nhiều mảng, sử dụng một mảng cho mỗi cột đầu ra:
INSERT INTO mytable
SELECT *
FROM unnest('{x1, x2, x3}' :: TEXT [], '{y1, y2, y3, y4}' :: TEXT [])