设计思路
当mysql查询有很多分类时,可能只需要每种分类的前三或者前十的数据,不需要返回所有的结果,所以我们可以给不同种类的数据添加序号,然后通过序号来筛选结果
例:建一张工人工作质量表,用年份和质量来分类
CREATE TABLE `work` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(32) DEFAULT '' COMMENT '姓名',
`years` int(11) DEFAULT 0 COMMENT '年份',
`type` varchar(32) DEFAULT '' COMMENT '质量类型: 高 中 低 不合格',
`count` int(11) DEFAULT 0 COMMENT '工作量',
PRIMARY KEY (`id`),
UNIQUE KEY(`name`,`years`,`type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
给新建的表添加一些数据
INSERT INTO `work` (`name`, `type`, `years`, `count`) VALUES ('张三', '高', 2020, 0);
INSERT INTO `work` (`name`, `type`, `years`, `count`) V