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

hàm mảng biginteger


Bạn có thể thay thế chức năng của chính mình. Cái này khá nhanh:

CREATE OR REPLACE FUNCTION arr_subtract(int8[], int8[])
  RETURNS int8[] AS
$func$
SELECT ARRAY(
    SELECT a
    FROM   unnest($1) WITH ORDINALITY x(a, ord)
    WHERE  a <> ALL ($2)
    ORDER  BY ord
    );
$func$  LANGUAGE sql IMMUTABLE;

Gọi:

SELECT arr_subtract('{3,5,6,7,8,9}':: int8[], '{3,4,8}'::int8[]);

Kết quả:

{5,6,7,9}

Giữ thứ tự ban đầu của mảng.

Có liên quan:

  • PostgreSQL unnest () với số phần tử
  • Loại trừ các phần tử mảng phù hợp



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cập nhật hoặc Chèn (nhiều hàng và cột) từ truy vấn con trong PostgreSQL

  2. Cách cài đặt Haproxy và Keepalived

  3. Cách nhanh chóng để khám phá số hàng của một bảng trong PostgreSQL

  4. Cách Tanh () hoạt động trong PostgreSQL

  5. Tổng hợp kết nối PostgreSQL:Phần 1 - Ưu và nhược điểm