Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Удаление пробелов в полях char (Андрей) 22/03/2011 - 12:09:30
      Re: Удаление пробелов в полях char (Akina) 22/03/2011 - 13:47:08
      Re: Удаление пробелов в полях char (Akina) 22/03/2011 - 14:02:33
      Re: Удаление пробелов в полях char (Андрей) 22/03/2011 - 14:20:33
      Re: Удаление пробелов в полях char (Akina) 22/03/2011 - 14:45:57

> Original message text:
> From: Андрей - 22/03/2011 - 12:09:30
> Subject:Удаление пробелов в полях char
> -----------------
> Привет.
> Как можно удалить пробелы (в моём конкретном случае - завершающие).
>
> update/replace T set F = rtrim(F) - не отрабатывает (row affected 0)
>
> update/replace T set F = replace(F,' ', '') - работает,
> но число пробелов разное.
>
> Если replace_func работал бы с regexp ( /\s+$/ ) было бы супер,
> но он не умеет этого.
>
> Есть другие решения?
>


From: Akina - 22/03/2011 - 13:47:08
Subject:Удаление пробелов в полях char
-----------------
Если указан тип char без определения длины - то это будет char(1), и разговор об удалении хвостовых пробелов не имеет смысла.

Если указан тип char и определена его длина, то при хранении значение поля дополняется справа пробелами, а при получении значения все хвостовые пробелы удаляются, т.е. разговор об удалении хвостовых пробелов также не имеет смысла.

mysql> create table test (
-> id integer auto_increment primary key,
-> val char(16)
-> );
Query OK, 0 rows affected (0.03 sec)

mysql> insert into test (val) values ('one'),(' two'),('three '),(' four ');
Query OK, 4 rows affected (0.03 sec)
Records: 4 Duplicates: 0 Warnings: 0

mysql> select id,val,length(val) from test;
+----+---------+-------------+
| id | val | length(val) |
+----+---------+-------------+
| 1 | one | 3 |
| 2 | two | 6 |
| 3 | three | 5 |
| 4 | four | 7 |
+----+---------+-------------+
4 rows in set (0.02 sec)


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
38143



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |