PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Làm cách nào để chèn vào bảng giá trị từ hai mảng trong Postgres?

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 [])


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thiết lập đường hầm SSH với Paramiko để truy cập PostgreSQL

  2. Cách làm việc với cơ sở dữ liệu PostgreSQL

  3. Cách POSITION () hoạt động trong PostgreSQL

  4. Tại sao bạn nên học PostgreSQL?

  5. Nhóm các dấu thời gian theo ngày, không phải theo thời gian