如何检查我的 table 的 SRID - ORACLE
How to check the SRID of my table - ORACLE
我有表格,但我需要知道 SRID 有什么。我试图在网上搜索,但找不到方法。我从甲骨文开始。谢谢
如果 table 有一个数据类型为 SDO_GEOMETRY
的列:
SQL> desc objekt_stup
Name Null? Type
----------------------------------------- -------- ----------------------------
ID_STUP NOT NULL NUMBER
GEOM PUBLIC.SDO_GEOMETRY --> that's the column!
<snip>
然后:
SQL> select s.geom.sdo_srid
2 from objekt_stup s
3 where rownum = 1;
GEOM.SDO_SRID
-------------
8307
SQL>
注意table的别名;没有它就无法工作:
SQL> select geom.sdo_srid
2 from objekt_stup
3 where rownum = 1;
select geom.sdo_srid
*
ERROR at line 1:
ORA-00904: "GEOM"."SDO_SRID": invalid identifier
SQL>
Littlefoot 的回答是正确的,但是它只会显示一行的SRID。无法保证所有行都具有相同的 SRID(这是您必须强制执行的内容)。
因此,我将删除 "where rownum = 1" 子句并使用 group by:
select s.geom.sdo_srid, count(*)
from objekt_stup s
group by s.geom.sdo_srid ;
我有表格,但我需要知道 SRID 有什么。我试图在网上搜索,但找不到方法。我从甲骨文开始。谢谢
如果 table 有一个数据类型为 SDO_GEOMETRY
的列:
SQL> desc objekt_stup
Name Null? Type
----------------------------------------- -------- ----------------------------
ID_STUP NOT NULL NUMBER
GEOM PUBLIC.SDO_GEOMETRY --> that's the column!
<snip>
然后:
SQL> select s.geom.sdo_srid
2 from objekt_stup s
3 where rownum = 1;
GEOM.SDO_SRID
-------------
8307
SQL>
注意table的别名;没有它就无法工作:
SQL> select geom.sdo_srid
2 from objekt_stup
3 where rownum = 1;
select geom.sdo_srid
*
ERROR at line 1:
ORA-00904: "GEOM"."SDO_SRID": invalid identifier
SQL>
Littlefoot 的回答是正确的,但是它只会显示一行的SRID。无法保证所有行都具有相同的 SRID(这是您必须强制执行的内容)。
因此,我将删除 "where rownum = 1" 子句并使用 group by:
select s.geom.sdo_srid, count(*)
from objekt_stup s
group by s.geom.sdo_srid ;