LINUX.ORG.RU

Удаление всех символов переноса строки в таблице средствами SQL

 , , , ,


0

1

Есть база данных, в ней есть некая таблица, в ней есть некое поле, в котором содержится текст. Как в этом тексте удалить все переносы строк, что бы текст стал одной единой строкой, средствами SQL? Не разумею... Гуглеж не помог. От документации уже голова едет... Желательно что бы решение не было привязано к конкретной СУБД, а было на чистом SQL. Но вообще дело происходит в Access.

Переносимое в голову не приходит, но должна быть функция применяющая регулярные выражения.

В postgresql: regexp_replace(string text, pattern text, replacement text [, flags text])

То есть: update table set column=regexp_replace(column,«\n»,"") where ...;

disarmer ★★★
()
Последнее исправление: disarmer (всего исправлений: 1)
Ответ на: комментарий от disarmer

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

Вот что первое выдал гугл по запросу mysql search and replace:

UPDATE `table_name`
 SET `field_name` = replace(same_field_name, 'unwanted_text', 'wanted_text')

Может-быть оно даже переносимо

MrClon ★★★★★
()

replace(string text, from text, to text) text Replace all occurrences in string of substring from with substring to replace('abcdefabcdef', 'cd', 'XX') abXXefabXXef

AnDoR ★★★★★
()
Ответ на: комментарий от Noob_Linux

Перенос строки это \n или \r\n (в каких-то экзотических случаях может встречаться \r без \n, хотя кажется такого уже не бывает).
Следовательно надо найти '\r\n' и заменить их на ' ', а потом найти '\n' и заменить на ' '

MrClon ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.