PostgreSQL добавляет больше значений в существующую строку - PullRequest
0 голосов
/ 17 сентября 2018

Я совсем не знаком с SQL, надеюсь, кто-то может помочь.

imss=# SELECT name, content from testdb where name = 'Test';
 name |                  content
------+--------------------------------------------
 Test | *@test1.com;*@test2.com;*@test3.com;
(1 row)

Как добавить дополнительные значения в столбец «контент»?WHERE name = 'Test'?

like *@test4.com;*@test5.com;@test5.com;

С уважением,

1 Ответ

0 голосов
/ 17 сентября 2018

Если вы храните CSV как один столбец, вам следует переосмыслить свой дизайн.

UPDATE testdb
SET content = content || ';@test4.com;*@test5.com;@test5.com'
WHERE name = 'Test';

Если содержимое является текстовым массивом, вы можете использовать ARRAY_APPEND:

UPDATE testdb
SET content = ARRAY_APPEND(content, '@test4.com')
WHERE name = 'Test';

В качестве альтернативы:

UPDATE testdb
SET content = content || ARRAY['@test4.com']
WHERE name = 'Test';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...