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

Cách chuyển mảng kiểu tùy chỉnh vào hàm Postgres

Bạn có thể sử dụng cú pháp thay thế bằng ký tự mảng thay vì phương thức khởi tạo mảng, là một cấu trúc giống như hàm Postgres và có thể gây ra sự cố khi bạn cần truyền giá trị - như trong một tuyên bố đã chuẩn bị:

SELECT myschema.myfunc('0d6311cc-0d74-4a32-8cf9-87835651e1ee'
                  , '{"(0d6311cc-0d74-4a32-8cf9-87835651e1ee, 25)"
                    , "(6449fb3b-844e-440e-8973-31eb6bbefc81, 10)"}'::mytype[]);

Tôi đã thêm dấu ngắt dòng giữa hai loại hàng trong mảng để hiển thị. Đó là hợp pháp.

Cách tìm cú pháp chính xác cho bất kỳ nghĩa đen?

Chỉ cần hỏi Postgres. Đây là bản demo:

CREATE TABLE mytype (id uuid, amount numeric(13,4));

INSERT INTO mytype VALUES
  ('0d6311cc-0d74-4a32-8cf9-87835651e1ee', 25)
 ,('6449fb3b-844e-440e-8973-31eb6bbefc81', 10);

SELECT ARRAY(SELECT m FROM mytype m);

Lợi nhuận:

{"(0d6311cc-0d74-4a32-8cf9-87835651e1ee,25.0000)","(6449fb3b-844e-440e-8973-31eb6bbefc81,10.0000)"}

db <> fiddle here

Bất kỳ bảng nào (kể cả các bảng tạm thời) đều tạo ra một loại hàng có cùng tên.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ứng dụng Spring Boot bị kẹt trên Hikari-Pool-1 - Đang khởi động ...

  2. Nhận xét ký tự / ký tự trong postgres / postgresql / psql?

  3. Dự phòng &Dự phòng cho PostgreSQL trên Microsoft Azure

  4. Tại sao thậm chí sử dụng * DB.exec () hoặc các câu lệnh chuẩn bị sẵn trong Golang?

  5. Cách pg_typeof () hoạt động trong PostgreSQL