我怎样才能从oracle中获得拉特和长点?
像这样:
MDSYS.SDO_GEOMETRY(2001,4326,NULL,
MDSYS.SDO_ELEM_INFO_ARRAY(1,1,1),
MDSYS.SDO_ORDINATE_ARRAY(51.702814,32.624736))
Run Code Online (Sandbox Code Playgroud) 如何使用oracle空间SQL查询查找点或多边形是否在另一个多边形内
这是场景;
我有一个表(STATE_TABLE),其包含一个空间类型(SDO_GEOMETRY),它是多边形(的说的状态),我有另一个表(UNIVERSITY_TABLE),其含有空间数据(SDO_GEOMETRY)(点/多边形),其包含大学;
现在我如何使用SQL select语句查找所选大学是否在给定状态.
主要是我想在地理围栏中找到给定对象的存在.
谢谢.
我有下表城市:
ID(int),City(char),latitude(float),longitude(float).
Run Code Online (Sandbox Code Playgroud)
现在根据用户的经度(例如:44.8)和纬度(例如:46.3),我想在100英里/公里范围内搜索他附近的所有城市.
我找到了一些例子,但不知道如何使它们适应我的情况
select *
from GEO.Cities a
where SDO_WITHIN_DISTANCE([I don`t know],
MDSYS.SDO_GEOMETRY(2001, 8307, MDSYS.SDO_POINT_TYPE(44.8,46.3, NULL) ,NULL, NULL),
'distance = 1000') = 'TRUE';
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激.
PS:如果可以有距离并进行分类
PPS:我想这样做,这样由于性能问题,我已经以这种方式做到了这一点http://www.scribd.com/doc/2569355/Geo-Distance-Search-with-MySQL但它的时间太长...
在Oracle SQL Developer中,当我运行此查询时:
SELECT DIMINFO FROM USER_SDO_GEOM_METADATA;
Run Code Online (Sandbox Code Playgroud)
我得到的结果如下:
MDSYS.SDO_DIM_ARRAY([MDSYS.SDO_DIM_ELEMENT],[MDSYS.SDO_DIM_ELEMENT])
Run Code Online (Sandbox Code Playgroud)
我不想要这个折叠版本.我希望打印出整个阵列.
我很确定我在一周前做过这件事,但对于我的生活,我不记得是怎么回事.
版本:SQL Developer 3.2.20.09
我已经使用gps设备捕获了一个图的四个点(坐标)。
点1:-lat- 27.54798833长-80.16397166
点2:-lat 27.547766,长-80.16450166
点3:-lat 27.548131,长-80.164701
点4:----
现在我想将这些坐标保存在oracle数据库中,并将其另存为多边形。
谢谢
根据oracle空间数据(SDO_GEOMETRY)的多边形.多边形由地理坐标形成,并且可以是不规则的.
我有一个我正在编写的.Net系统,它需要能够从数据库中检索oracle几何字段.在我的SQL语句中是否有任何方法可以将几何类型转换为字符串,以便我可以在.Net端处理它.目前我无法获取数据,因为它不是一个有效的数据类型放入我的OLEDB阅读器,因此它必须转换为数据库端.
select CS_BOUNDS from MDSYS.CS_SRS where SRID = 4326
Run Code Online (Sandbox Code Playgroud)
谢谢
我正在寻找一种从WGS84转换为UTM Zone 21的方法
我只SDO_CS.TO_USNG在oracle空间中找到了一个函数,但这转换为美国国家网格(USNG),这是一个例子
Select SDO_CS.to_USNG(
SDO_GEOMETRY( 2001,8307,
SDO_POINT_TYPE(-57.5451,-25.2371,NULL),
NULL,NULL),
1
) UTM_MGRS
from dual;
_______________
21JVN4510008687
Run Code Online (Sandbox Code Playgroud)
转换为UTM将是x = 445099,61395302,y = 7208686,7337054
我在SDO_INSIDEand之间有这种混淆SDO_CONTAINS,难道这两个查询都需要返回相同的结果吗?