Главная страница
    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.042 c
3-1200920739
S@shka
2008-01-21 16:05
2008.06.29
Передать в UDF TimeStamp


11-1190364115
grim
2007-09-21 12:41
2008.06.29
по поводу создания форм


15-1210843226
User1
2008-05-15 13:20
2008.06.29
Приложения написанные на Delphi


2-1207920040
webSQLNeederr
2008-04-11 17:20
2008.06.29
Кирилица в Memo


15-1210924890
Petya
2008-05-16 12:01
2008.06.29
Подскажите, а можно в DBGrid вывести цифры





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский