mysql 新特性之geometry

举报
lxw1844912514 发表于 2022/03/27 02:02:01 2022/03/27
【摘要】 1、获取矩形两个点的数据(左上角和右下角)SELECT  *    FROM    t_location    WHERE   MBRContains     &...

1、获取矩形两个点的数据(左上角和右下角)

SELECT  *
    FROM    t_location
    WHERE   MBRContains
                    (
                    LineString(
                            Point (22.169,114.019 ),
                            Point ( 23.669, 114.939 )
                            ), Location
                    )

2、获取周围10公里的数据,并按距离排序

SELECT  
    address,X(address_loc),Y(address_loc),  
(2 * 6378.137 * ASIN(SQRT(POW(SIN(PI() * (:lat - X(p.shop_point)) / 360),2) + COS(PI() * :lat / 180) * COS(X(p.shop_point) * PI() / 180) * POW(SIN(PI() * (:lng - Y(p.shop_point)) / 360),2)))) as distance  
FROM  
    address  
WHERE  
    MBRContains (  
        LineString (  
            Point (  
                30.620076 + 10 / (  
                    111.1 / COS(RADIANS(104.067221))  
                ),  
                104.067221 + 10 / 111.1  
            ),  
            Point (  
                30.620076 - 10 / (  
                    111.1 / COS(RADIANS(104.067221))  
                ),  
                104.067221 - 10 / 111.1  
            )  
        ),  
        address_loc  
    )  
ORDER BY distance;



3、详细查看
http://mysqlserverteam.com/mysql-5-7-and-gis-an-example/

原文:https://blog.csdn.net/u012274656/article/details/78529160

文章来源: blog.csdn.net,作者:lxw1844912514,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/lxw1844912514/article/details/100027818

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。