Как я могу удалить все пробелы в начале строки? - PullRequest
0 голосов
/ 25 июня 2018

У меня есть такая таблица:

// posts
+----+--------------+
| id |  subject     |
+----+--------------+
| 1  |    subject 1 |
| 2  | subject 2    |
| 3  |   subject 3  |
| 4  |  subject 4   |
| 5  | subject 5    |
+----+--------------+

Мне нужно удалить все пробелы, которые находятся в начале столбца subject. Вот мой текущий код:

UPDATE posts set subject = REPLACE(subject, ' ', '') WHERE 1;

А вот текущий результат:

+----+--------------+
| 1  | subject1     |
| 2  | subject2     |
| 3  | subject3     |
| 4  | subject4     |
| 5  | subject5     |
+----+--------------+

А вот и ожидаемый результат:

+----+--------------+
| 1  | subject 1    |
| 2  | subject 2    |
| 3  | subject 3    |
| 4  | subject 4    |
| 5  | subject 5    |
+----+--------------+

См? Только пробелы, которые находятся в начале строки, должны быть удалены. Заметил, что в регулярных выражениях есть что-то (я тестировал в PHP) ^, и это именно то, что я ищу. Но я не знаю, как мне использовать его в MySQL. Есть идеи?

Ответы [ 2 ]

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

Использование trim () функция

Обновление сообщений

set subject=trim(subject) where 1

0 голосов
/ 25 июня 2018
mysql> select ltrim('      abc');
+--------------------+
| ltrim('      abc') |
+--------------------+
| abc                |
+--------------------+
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...