SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for geo
-- ----------------------------
DROP TABLE IF EXISTS `geo`;
CREATE TABLE `geo` (
`name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`lng` decimal(10, 6) NULL DEFAULT NULL,
`lat` decimal(10, 6) NULL DEFAULT NULL
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of geo
-- ----------------------------
INSERT INTO `geo` VALUES ('实验小学', 118.302416, 33.958870);
INSERT INTO `geo` VALUES ('实验小学1', 118.302416, 33.958870);
INSERT INTO `geo` VALUES ('实验小学2', 118.302417, 33.958860);
INSERT INTO `geo` VALUES ('实验小学3', 118.302418, 33.958850);
INSERT INTO `geo` VALUES ('实验小学1', 118.302416, 33.958870);
INSERT INTO `geo` VALUES ('实验小学2', 118.302417, 33.958860);
INSERT INTO `geo` VALUES ('实验小学3', 118.302418, 33.958850);
INSERT INTO `geo` VALUES ('实验小学1', 118.302421, 33.958970);
INSERT INTO `geo` VALUES ('实验小学2', 118.302422, 33.958960);
INSERT INTO `geo` VALUES ('实验小学3', 118.302423, 33.958950);
select
(
6371* ACOS(
COS(RADIANS(33.95887))
*COS(RADIANS(lat))
*COS(RADIANS(lng)-RADIANS(118.302416))+SIN(RADIANS(33.95887))
*SIN(RADIANS(lat))
)
)as distance,geo.*
from geo
having distance<X