Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2008.06.29;
Скачать: [xml.tar.bz2];

Вниз

SQL. Надо обрезать символы пробельной группы   Найти похожие ветки 

 
homm ©   (2008-01-23 15:38) [0]

Я весь яндекс перерыл уже.
Делаю так:
TRIM(BOTH "\n\r\t " FROM `weight`) = "95"
Получаю результат не тот, который ожидается. Вопрос: Проблема в этом выражении, или где то еще?


 
homm ©   (2008-01-23 15:40) [1]

В частности Есть строка, в которой weight равно "95\n\r". Она не находится приведенным выше выражением.


 
homm ©   (2008-01-23 15:42) [2]

Все, ветка в базах.
Теперь ответ я получу только через неделю :(


 
KSergey ©   (2008-01-23 15:55) [3]

А это что за база такая?


 
ZoldBerger   (2008-01-23 15:57) [4]

SELECT RTRIM(LTRIM(" <word>  "))

/*обрезание пробелов по бокам*/


 
homm ©   (2008-01-23 15:59) [5]

> [3] KSergey ©   (23.01.08 15:55)
> А это что за база такая?

MySQL


> [4] ZoldBerger   (23.01.08 15:57)
> /*обрезание пробелов по бокам*/

Сабж прочти. «Пробельная группа» <> «один лишь пробел»


 
Johnmen ©   (2008-01-23 16:15) [6]


> TRIM(BOTH "\n\r\t " FROM `weight`) = "95"Получаю результат
> не тот, который ожидается.

Насколько помню, это значит обрезать последовательность "\n\r\t ". Значит, таким способом желаемое не выйдет...


 
Правильный_Вася   (2008-01-23 16:31) [7]

udf напиши


 
homm ©   (2008-01-23 17:10) [8]

> [6] Johnmen ©   (23.01.08 16:15)
> Насколько помню, это значит обрезать последовательность "\n\r\t ".

Да.

Вот выдержка из справки:
TRIM([[BOTH | LEADING | TRAILING] [remstr] FROM] str)
Возвращает строку str с удаленными всеми префиксами и/или суффиксами, указанными в remstr. Если не указан ни один из спецификаторов BOTH, LEADING или TRAILING, то подразумевается BOTH. Если аргумент remstr не задан, то удаляются пробелы:
mysql> SELECT TRIM(" bar ");
       -> "bar"

mysql> SELECT TRIM(LEADING "x" FROM "xxxbarxxx");
       -> "barxxx"

mysql> SELECT TRIM(BOTH "x" FROM "xxxbarxxx");
       -> "bar"

mysql> SELECT TRIM(TRAILING "xyz" FROM "barxxyz");
       -> "barx"

Так что по идее все верно.


 
Johnmen ©   (2008-01-23 17:16) [9]


> homm ©   (23.01.08 17:10) [8]

Судя по справке, все неверно. Т.к. ищется префикс/суффикс "\n\r\t ". А такого в значении нет. Есть "\n\r".
Обрати внимание на четвертый пример.


 
homm ©   (2008-01-23 17:25) [10]

> [9] Johnmen ©   (23.01.08 17:16)
> Обрати внимание на четвертый пример.

Чьерт… Как же быть? Регекспом долго, нужно порядка 2к выборок.
Просто в PHP trim как раз выбирает все символы из списка, понадеялся что в mysql так же.


 
Johnmen ©   (2008-01-23 17:49) [11]


> homm ©   (23.01.08 17:25) [10]

Смотря что м.б. в поле weight.
Посмотри SUBSTRING, LOCATE, ...



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2008.06.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.065 c
2-1212159887
programmer90
2008-05-30 19:04
2008.06.29
Одинаковое значение свойств у всех Edit-ов


15-1210830736
User1
2008-05-15 09:52
2008.06.29
"Подбить результат"


15-1210936135
Kolan
2008-05-16 15:08
2008.06.29
SQLite не может получить доступ на Висте, почему?


2-1212308588
leonidus
2008-06-01 12:23
2008.06.29
Как определить что мое окно наверху?


2-1212396147
Сергей
2008-06-02 12:42
2008.06.29
Как взять все записи четные пяти?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский