读书人

PostgreSQL仿照MySQL的substring_inde

发布时间: 2012-08-08 14:32:45 作者: rapoo

PostgreSQL模仿MySQL的substring_index方法
PostgreSQL中没有substring_index方法。
实现代码如下:

CREATE OR REPLACE FUNCTION substring_index(varchar, varchar, integer)RETURNS varchar AS $$  DECLARE    tokens varchar[];    length integer ;    indexnum integer;  BEGIN    tokens := pg_catalog.string_to_array($1, $2);     length := pg_catalog.array_upper(tokens, 1);    indexnum := length - ($3 * -1) + 1;    IF $3 >= 0 THEN      RETURN pg_catalog.array_to_string(tokens[1:$3], $2);    ELSE      RETURN pg_catalog.array_to_string(tokens[indexnum:length], $2);    END IF;  END;$$ IMMUTABLE STRICT LANGUAGE PLPGSQL;

读书人网 >操作系统

热点推荐