#postgresql
#postgresql
Вопрос:
У меня есть таблица со столбцом, содержащим адрес. Я хочу удалить все после ,
в строке. Как мне это сделать в PostgreSQL?
Я пытался использовать REPLACE
, но это работает только с определенными строками, что является проблемой, потому что каждая строка в столбце будет иметь другой адрес.
SELECT *
FROM address_book
r_name r_address
xxx 123 XYZ st., City, Zipcode
yyy 333 abc road, City, Zipcode
zzz 222 qwe blvd, City, Zipcode
Мне нужен столбец r_address
, чтобы возвращать только:
123 XYZ st.
333 abc road
222 qwe blvs
Ответ №1:
Используйте split_part
функцию, вот так:
SELECT r_name, split_part(r_address, ',', 1) AS street
FROM address_book
Документы:https://www.postgresql.org/docs/current/functions-string.html