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

MySQL-空間ポイントの近くを選択

    数式を少し修正しました。

    これは私のために働きます:

    CREATE TABLE lastcrawl (id INT NOT NULL PRIMARY KEY, pnt POINT NOT NULL) ENGINE=MyISAM;
    
    INSERT
    INTO    lastcrawl
    VALUES  (1, POINT(40, -100));
    
    SET @lat = 40;
    SET @lon = -100;
    
    SELECT  *
    FROM    lastcrawl
    WHERE   MBRContains
                    (
                    LineString
                            (
                            Point
                                     (
                                     @lat + 10 / 111.1,
                                     @lon + 10 / ( 111.1 / COS(RADIANS(@lat)))
                                     ),
                            Point    (
                                     @lat - 10 / 111.1,
                                     @lon - 10 / ( 111.1 / COS(RADIANS(@lat)))
                                     )
                            ),
                    pnt
                    );
    



    1. 単純なパラメータ化と簡単な計画—パート1

    2. Postgresデータベース内のすべてのテーブルを切り捨てる

    3. SQLServerのシノニムの概要

    4. Microsoft SQL Server –SQLサタデーダラスに参加してください