У меня есть таблица вроде этого:
// 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. Любая идея?
Использовать функцию trim()
Обновление сообщений
set subject=trim(subject) where 1
mysql> select ltrim(' abc');
+--------------------+
| ltrim(' abc') |
+--------------------+
| abc |
+--------------------+
TRIM()
.