kingbase数据库兼容mysql的substring_index函数

create or replace function substring_index(parstr text,sp text, idx int) RETURN VARCHAR2 AS
DECLARE
pos int;
nam VARCHAR2;
BEGIN
IF instr(parstr,sp) = 0 THEN
RETURN parstr;
END IF ;
IF idx > 0 THEN
SELECT instrb(parstr,sp, 1 ,idx) INTO pos;
SELECT substring(parstr , 1 ,pos-1) INTO nam;
ELSE
SELECT instrb(parstr,sp, -1 ,abs(idx)) INTO pos;
SELECT substring(parstr , pos + 1) INTO nam;
END IF;
RAISE NOTICE 'pos=%',pos;
RAISE NOTICE 'nam=%',nam;
RETURN nam;
EXCEPTION
WHEN OTHERS THEN
RETURN parstr;
END ;

你可能感兴趣的:(数据库,mysql)