Re: query on smallint array column

Поиск
Список
Период
Сортировка
От Zhihong Yu
Тема Re: query on smallint array column
Дата
Msg-id CALNJ-vTErS6+yuFMFS41xCSBMda4FJ5X45f_CLPVZ5FbLr3mLA@mail.gmail.com
обсуждение исходный текст
Ответ на Re: query on smallint array column  (Pavel Stehule <pavel.stehule@gmail.com>)
Список pgsql-hackers
Thanks Pavel for fast response.

On Sun, Dec 13, 2020 at 9:51 AM Pavel Stehule <pavel.stehule@gmail.com> wrote:
Hi

ne 13. 12. 2020 v 18:42 odesílatel Zhihong Yu <zyu@yugabyte.com> napsal:
Hi,
I was experimenting with the following query.

create table sint1(k int primary key, arr smallint[]);
create index s1 on sint1(arr);
insert into sint1 select s, array[s*s, s] FROM generate_series(1, 10) AS s;
select * from sint1 where arr @> array[4];
ERROR:  operator does not exist: smallint[] @> integer[]
LINE 1: select * from sint1 where arr @> array[4];
                                      ^
HINT:  No operator matches the given name and argument types. You might need to add explicit type casts.
-------

I wonder if someone can enlighten me on the correct way to perform the type cast.

 
postgres=# select * from sint1 where arr @> array[4::smallint];
┌───┬────────┐
│ k │  arr   │
╞═══╪════════╡
│ 2 │ {4,2}  │
│ 4 │ {16,4} │
└───┴────────┘
(2 rows)

postgres=# select * from sint1 where arr @> array[4]::smallint[];
┌───┬────────┐
│ k │  arr   │
╞═══╪════════╡
│ 2 │ {4,2}  │
│ 4 │ {16,4} │
└───┴────────┘
(2 rows)


postgres=#
 

Thanks

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Pavel Stehule
Дата:
Сообщение: Re: query on smallint array column
Следующее
От: Noah Misch
Дата:
Сообщение: Re: HASH_BLOBS hazards (was Re: PATCH: logical_work_mem and logical streaming of large in-progress transactions)