Как мне обрезать ведущие и конечные цитаты из строки MySQL? - PullRequest
11 голосов
/ 16 июля 2011

У меня есть таблица MySQL, которую я импортировал из файла CSV. В этом процессе куча записей имеет кавычки, ведущие и завершающие запись нескольких строк данных. Например, в таблице «example_table» у меня есть строка с названием «title». Некоторые из этих названий написаны как:

"title1"
"title2"
"title3"

и некоторые пишутся без кавычек:

title4
title5
title6

Я пробовал различные вызовы SQL, чтобы обрезать строку, но продолжаю получать ошибки. Вот мой вызов sql:

SELECT * FROM `example_table` TRIM(LEADING '"' FROM "title")

Это ошибка MySQL, когда я запускаю вызов:

1064 - у вас ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL для правильного синтаксиса для использования

Как мне избавиться от всех конечных и ведущих кавычек в строке?

Ответы [ 4 ]

37 голосов
/ 16 июля 2011

Попробуйте:

UPDATE `example_table` 
   SET `title` = TRIM(BOTH '"' FROM `title`)

Этот запрос обновит ваш example_table, чтобы удалить начальные и конечные двойные кавычки из значения столбца title.

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

4 голосов
/ 09 марта 2016

Это решило мою проблему

UPDATE table_name SET column_name = REPLACE(column_name,'"','')
4 голосов
/ 16 июля 2011

Просто измените это на

SELECT TRIM(BOTH '"' FROM title) AS trimmed_title FROM `example_table` 
2 голосов
/ 16 июля 2011

это работает для меня

select trim(both '"' from column_name) from table_name;
...