我正在尝试将SRID从2180转换为2177。这是我的示例代码。
SELECT SDO_CS.TRANSFORM(MDSYS.SDO_GEOMETRY(2002,2180,null,MDSYS.SDO_ELEM_INFO_ARRAY(1,2,1),MDSYS.SDO_ORDINATE_ARRAY(461273,290199996,608231,546195962,461280,489099996,608185,353195948)),2177) geometria FROM DUAL
输出为MDSYS.SDO_ORDINATE_ARRAY(6374994,33906775,295683316,187577,6638854,92398028,551837709,962805,6387072,01129964,494707234,588496,6717195,04670803,358718858,239292)
但是当我使用在线转换器时,它看起来像这样(正确值):
6527855.83,5911838.68 6527863.20 5911792.21
我在做什么错了?
答案 0 :(得分:1)
我认为原因很简单,在分隔小数部分时使用,
而不是.
。有时候我也碰巧;)
select sdo_cs.transform(
mdsys.sdo_geometry(2002,2180,null,mdsys.sdo_elem_info_array(1,2,1),
mdsys.sdo_ordinate_array(461273.290199996,
608231.546195962,
461280.489099996,
608185.353195948)),
2177) geometria
from dual
结果:
6527855.83374364
5911838.68338696
6527863.68346768
5911792.56737736