PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Indeks GIN PostgreSQL pada array uuid

Catatan: jawaban ini sudah usang karena ini sekarang merupakan bagian dari PostgreSQL standar, lihat jawaban tbussmann lainnya (yang harus Anda pilih).

Jawaban asli:

Ini dapat dilakukan dengan menggunakan kelas operator berikut:

CREATE OPERATOR CLASS _uuid_ops DEFAULT 
  FOR TYPE _uuid USING gin AS 
  OPERATOR 1 &&(anyarray, anyarray), 
  OPERATOR 2 @>(anyarray, anyarray), 
  OPERATOR 3 <@(anyarray, anyarray), 
  OPERATOR 4 =(anyarray, anyarray), 
  FUNCTION 1 uuid_cmp(uuid, uuid), 
  FUNCTION 2 ginarrayextract(anyarray, internal, internal), 
  FUNCTION 3 ginqueryarrayextract(anyarray, internal, smallint, internal, internal, internal, internal), 
  FUNCTION 4 ginarrayconsistent(internal, smallint, anyarray, integer, internal, internal, internal, internal), 
  STORAGE uuid;

Penghargaan untuk ini untuk mengarahkan saya ke arah yang benar.

Dokumentasi yang relevan ada di Menghubungkan ekstensi ke indeks , khususnya nomor strategi dan fungsi operator untuk GIN dijelaskan di sana.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengotomatiskan Barman dengan Wayang:it2ndq/barman (bagian dua)

  2. Kueri postgres dalam produksi menghasilkan I/O pembacaan disk yang sangat tinggi

  3. Otentikasi kata sandi gagal untuk wadah postgres Docker

  4. Tutorial Ruby PostgreSQL

  5. Bagaimana mengubah tipe data kolom dari karakter ke numerik di PostgreSQL 8.4