如何检查我的 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 ;