类似于这样的需求,不同老师负责不同学生,求每个老师的学生年龄段。
**期望得到数据
通过搜索得知 elt 和 interval 可以配合进行区间查询。可是给的例子都是查询连续区间的,比如查询范围为
0-10,10-20
这样连续不间断的范围。
现在的需求是查询每个老师的学生的年龄区间,年龄区间可能不连续,比如
5-15,20-25
这样的中间有间断的区间
1
771456556 OP ''SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- -- Table structure for u -- ---------------------------- DROP TABLE IF EXISTS `u`; CREATE TABLE `u` ( `id` int(11) NOT NULL AUTO_INCREMENT, `teacher` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, `stu` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, `stu_age` int(11) NULL DEFAULT NULL, PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- Records of u -- ---------------------------- INSERT INTO `u` VALUES (1, '王老师', '张三', 3); INSERT INTO `u` VALUES (2, '王老师', '李四', 21); INSERT INTO `u` VALUES (3, '王老师', '王五', 25); INSERT INTO `u` VALUES (4, '李老师', '马六', 12); INSERT INTO `u` VALUES (5, '李老师', 'aaa', 13); INSERT INTO `u` VALUES (6, '李老师', 'bbb', 15); INSERT INTO `u` VALUES (7, '马老师', 'ccc', 22); INSERT INTO `u` VALUES (8, '马老师', 'ddd', 30); INSERT INTO `u` VALUES (9, '马老师', 'eee', 31); SET FOREIGN_KEY_CHECKS = 1; '' |