create or replace function real_st_astext(
geom in clob
) return clob
is
geometry clob;
tempGeom clob;
begin
geometry := upper(geom);
if geom like ‘(((%‘ then
geometry := ‘MULTIPOLYGON‘||geom;
else
if geom like ‘((%‘ then
tempGeom := substr(geom, instr(geom, ‘((‘)+2, length(geom));
if tempGeom like ‘%(%‘ then
geometry := ‘MULTILINESTRING ‘||geom;
else
geometry := ‘POLYGON ‘||geom;
end if;
else
if geom like ‘(%‘ then
if geom like ‘%,%‘ then
geometry := ‘LINESTRING‘||geom;
else
geometry := ‘POINT‘||geom;
end if;
end if;
end if;
end if;
return geometry;
end;
Oracle real_st_astext,解决st_astext函数返回异常问题
原文:http://www.cnblogs.com/nihaorz/p/5332556.html