创建表
DROP TABLE IF EXISTS `typhoonReal`;
CREATE TABLE `typhoonReal` (
`datetime` bigint(20) NOT NULL,
`tsid` int(20) NOT NULL,
`lon` double(20,1) DEFAULT NULL,
`lat` double(20,1) DEFAULT NULL,
`updatetime` bigint(20) DEFAULT NULL,
PRIMARY KEY (`datetime`,`tsid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
因为工作原因,表不方便全贴,数据可以自己任意添加几个以方便自己测试
因为工作需要,我需要把经纬度,当成一个整体来放入查询数据,查询了很多资料,最终解决问题
查询语句
select * from typhoonReal where MBRWithin(ST_GeomFromText(CONCAT('POINT(',lon,' ',lat,')')),GeomFromText('POLYGON((0 14, 150 14, 150 0, 0 0, 0 14))'));
注意 POLYGON函数中的数据要前尾合起来,不然会报错