sql >> データベース >  >> RDS >> Sqlserver

SQL Server サークル

    あなたの問題は、地理座標で円を描くことです。 Google マップはウェブ メルカトル図法を使用しています https://en.wikipedia.org/wiki/Web_Mercator 、あなたの円が楕円形になるように。 Google マップで円のように見えるものを作成する場合は、Web メルカトル図法のデータ セットで作成する必要があります。 (意図的に「円のように見える」と言っているのは、大縮尺マップの utm などの別のシステムに投影すると、再び楕円形になる可能性があるためです。)

    web_mercator の epsg コードは 3857 なので、x 座標と y 座標を web_mercator に投影すると

    DECLARE @g geometry;
    SET @g = geometry::STGeomFromText('POINT(-9796115.18981 5543147.20386)', 3857);
    SELECT @g.BufferWithTolerance(5, .01, 1)
    

    動作するはずです (-9796... 5543... を入力するだけで、地理的な X と Y の web_mercator 座標になります)

    SQL サーバー空間ツール (https://gis.stackexchange.com/questions/2723/is-it-possible-to-reproject-spatial-data-using-sql-server ) または外部ツールを使用して再投影を行います。ポイントが少ない場合は、http://cs2cs.mygeodata.eu/ 役に立つかもしれません。




    1. 2つの異なるデータベースに格納されている2つのテーブル間で主キーを同期する

    2. SQL Server(T-SQL)で未送信メールを確認する

    3. DRYの原則が適用されない場合:SQLServerでのBITWISE操作

    4. Transact-SQLの再帰CTEでUNIONではなくUNIONALLが必要なのはなぜですか。