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

Вниз

SQL запрос   Найти похожие ветки 

 
Sw   (2008-04-16 09:10) [0]

База Interbase: мне нужно из поля name удалить первые 11 символов и последние 3, т.е. извлечь часть строки
Substring(name from 12 for 40) работает, но длина строки неизвестна, вместо значения 40 использую length(name)-3 - ругается SQL error code = -104.
Помогите отдельно получить строки без первых и последних символов получается:
select
(f_right(name, f_stringlength(name)-11)),
(f_left(name, f_stringlength(name)-3))
from table1

((((но мне нужно что-то вроде как функция Copy в Delphi((Помогите, пож-та


 
Johnmen ©   (2008-04-16 09:34) [1]

Обязательно это делать на сервере? Если да, то чем продиктовано?


 
palva ©   (2008-04-16 09:43) [2]

STRLEN - есть такая стандартная UDF. Если у вас в базе установлена, конечно.


 
Sw   (2008-04-16 09:57) [3]


> palva ©   (16.04.08 09:43) [2]

есть f_stringlength(name) - работает, но в Substring(name from 12 for ..) подставляю - ругается


 
palva ©   (2008-04-16 10:24) [4]

Похоже, что родная SUBSTRING принимает только константы. Используйте UDF типа:
SELECT SUBSTR(STATE_NAME, 2, STRLEN(STATE_NAME)-1) FROM STATE_TABLE


 
Sw   (2008-04-16 10:47) [5]

Function unknown.SUBSTR.

только в таком варианте работает:
SELECT SUBSTRING(NAME from 2 for 10) FROM TABLE
и через переменную не работает i(integer)
l=f_stringlength(name); name=substring(name from 12 for l);


 
Sw   (2008-04-16 10:49) [6]

т.е. l(integer)


 
Sw   (2008-04-16 11:03) [7]

наверно буду в переменную присваивать сначала значение без первых символов, а потом без последних
name=(f_right(name, f_stringlength(name)-11));
name=(f_left(name, f_stringlength(name)-3));
 (((



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

Форум: "Начинающим";
Текущий архив: 2008.05.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.051 c
15-1206929508
slider007
2008-03-31 06:11
2008.05.18
С днем рождения ! 31 марта 2008 понедельник


3-1197395663
DmitrichJ
2007-12-11 20:54
2008.05.18
MySQL, AnyDac Ошибка с max_allowed_packet


2-1208426824
Вход в папку
2008-04-17 14:07
2008.05.18
вход в папку в компоненте DirectoryListBox


11-1188735091
Виктор007
2007-09-02 16:11
2008.05.18
CollapseProcTable0.inc


3-1197029425
zorik
2007-12-07 15:10
2008.05.18
Запрос из 4-х таблиц





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