訓練家的快寫筆記

The legend of trainer's paper


搜尋:

     關閉     
標題:mssql geometry 語法
內容:
SELECT 
TOP 1
	[SCNO],
	[SCNOEXT],
	CAST([GEOM97].MakeValid().STEnvelope().STPointN(1).STX AS INT) AS [LEFT],
	CAST([GEOM97].MakeValid().STEnvelope().STPointN(1).STY AS INT) AS [BOTTOM],
	CAST([GEOM97].MakeValid().STEnvelope().STPointN(3).STX AS INT) AS [RIGHT],
	CAST([GEOM97].MakeValid().STEnvelope().STPointN(3).STY AS INT) AS [TOP],
	CAST([GEOM97].MakeValid().STCentroid().STX AS INT) AS [X],
	CAST([GEOM97].MakeValid().STCentroid().STY AS INT) AS [Y],
       sdo2geojson(b.geom97,0) as geom97 ->  dbo.geomToGeoJSON([a].[GEOM97]) AS [GEOM97]
      
FROM DATLAND

oracle:
and MDSYS.SDO_RELATE(a.GEOM97, MDSYS.SDO_GEOMETRY(@XY), 'MASK=CONTAINS QUERYTYPE=WINDOW') = 'TRUE'
mssql:
and a.GEOM97.MakeValid().STIntersects( geometry::STGeomFromText(@XY,3826)) = 1

oracle:
to_char( @date, 'YYYY')
mssql:
 YEAR(@date)

oracle:
to_char( @date , 'YYYY/mm/dd')
mssql:
 CONVERT (char,@endDate, 111) 

oracle:
to_char( @date , 'YYYY/mm/dd hh24:MM:ss')
mssql:
 CONVERT (char,@endDate, 120)

oracle:
DECODE(MAP_TYPE, '18', '1', '13', '2', '04', '3', '05', '4', '06', '5', '07', '5', '08', '5') LAYER_ID

mssql:
CASE(MAP_TYPE) WHEN '18' THEN '1'
														WHEN '13' THEN '2'
														WHEN '04' THEN '3'
														WHEN '05' THEN '4' 
														WHEN '06' THEN '5' 
														WHEN '07' THEN '5' 
														WHEN '08' THEN '5' 
                                                        WHEN '21' THEN '21' END [LAYER_ID]

oracle:
sql.Append(String.Format(" MDSYS.SDO_RELATE(GEOM, MDSYS.SDO_GEOMETRY('POINT({0} {1})'), 'mask=CONTAINS querytype=window') = 'TRUE' ", _ponitX, _pointY));
mssql:
sql.Append(String.Format(" GEOM.MakeValid().STIntersects( geometry::STGeomFromText('POINT({0} {1})',3826)) = 1 ",_pointX,_pointY));


oracle : 
instr(@DATA_0, use_limit_no) > 0 
mssql : 
CHARINDEX( use_limit_no, @DATA_0) > 0   //要反過來

MSSQL WKT -> Geom :
update COUNTY SET GEO97=geometry::STGeomFromText(GEO97_WKT,3826)

ORACLE GEOMETRY -> WKT:
update TOWN SET GEO97_WKT=SDO_UTIL.TO_WKTGEOMETRY(GEO97)