码迷,mamicode.com
首页 > 数据库 > 详细

Oracle real_st_astext,解决st_astext函数返回异常问题

时间:2016-03-29 14:51:45      阅读:948      评论:0      收藏:0      [点我收藏+]

标签:

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!