Saya mencari bantuan tentang cara melakukan kueri yang mengembalikan baris jika tipe kolom array berisi setidaknya satu entri dari array lain, jadi contoh:

Row1

col_a = {1,2}

Saya ingin kueri yang mengatakan col_a contains {3,1} dan itu harus mengembalikan Row1 karena col_a berisi '1'.

Apakah itu masuk akal?

Nilai {3,1} dalam contoh akan berasal dari subquery lain. Tolong beri tahu saya jika ini mungkin karena saya berjuang untuk menemukan contoh. Yang paling dekat yang saya temukan adalah operator @> tetapi itu mengharuskan semua entri berada di col_a kan daripada yang cocok?

Terima kasih

0
iQ. 25 Mei 2021, 18:09

1 menjawab

Jawaban Terbaik

Anda dapat menggunakan operator && (tumpang tindih)

select array[1,2,3,4] && array[3,9];
 ?column?
----------
 t
(1 row)
1
JGH 25 Mei 2021, 15:13