ОБНОВИТЬ массив строк в нижнем регистре - PullRequest
0 голосов
/ 29 июня 2018

Как обновить столбец, представляющий собой массив строк, чтобы преобразовать каждый из них в нижний регистр?

Вот так Обновить все значения столбца в нижний регистр , но для массива строк.

Пример данных:

id | tags                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
---+---------------------------------------------------------------
58 | 
87 | {Pasta}
94 | {trendy,Supper,"Restaurant casual"}
...

Ответы [ 2 ]

0 голосов
/ 29 июня 2018

Вы можете преобразовать массив в текст, применить lower() к нему, а затем преобразовать его обратно в массив:

update the_table
  set tags = lower(tags::text)::text[];
0 голосов
/ 29 июня 2018

Возможно, вы могли бы создать строку из массива, сделать ее строчной и вернуть ее в массив за один раз - попробуйте:

create table myTest (
id bigserial primary key,
arrayText text[]);

insert into myTest (arrayText) values ('{"aPPLE","GRAPE","piNEappLe","CHErry"}');
select * from myTest;
update myTest set arrayText = string_to_array(LOWER(array_to_string(arraytext,',')),',') where id = 1;
select * from myTest;`
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...