powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как вызвать strpos() с указанной позиции?
3 сообщений из 3, страница 1 из 1
Как вызвать strpos() с указанной позиции?
    #39633242
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В SQL Server есть функция

Код: sql
1.
CHARINDEX ( expressionToFind , expressionToSearch [ , start_location ] )  




Я сделал такой аналог, но может есть лучше решение?

Код: sql
1.
2.
3.
4.
5.
6.
       pos2:=strpos(SUBSTRING(string,pos1+1), ' ');
        IF(pos2>0)
        THEN
            pos2:=pos2 + pos1+1;
        END IF;
-- ....
...
Рейтинг: 0 / 0
Как вызвать strpos() с указанной позиции?
    #39633310
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
CREATE OR REPLACE FUNCTION charindex(text, text, integer) 
RETURNS integer AS $$ 
SELECT CASE WHEN strpos(substr($2, $3+1), $1) = 0 
THEN 0 ELSE strpos(substr($2, $3+1), $1) + $3 END; 
$$ LANGUAGE SQL IMMUTABLE RETURNS NULL ON NULL INPUT;
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Как вызвать strpos() с указанной позиции?
    #39827698
Ёжик25
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ролг Хупин,

по моему самое простое:


Код: sql
1.
charindex(substr, str, position) 

->

Код: sql
1.
case when strpos(substr(str , position), substr) > 0 THEN strpos(substr(str, position), substr) +(position-1) ELSE 0 END 
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как вызвать strpos() с указанной позиции?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]