您的位置:首页技术文章
文章详情页

Mysql如何按照日期对比数据,求SQL语句

【字号: 日期:2022-06-18 16:45:48浏览:22作者:猪猪

问题描述

/*Navicat MySQL Data TransferTarget Server Type : MYSQLTarget Server Version : 50629File Encoding : 65001Date: 2016-09-05 13:57:13*/SET FOREIGN_KEY_CHECKS=0;-- ------------------------------ Table structure for student-- ----------------------------DROP TABLE IF EXISTS `student`;CREATE TABLE `student` ( `id` int(255) NOT NULL AUTO_INCREMENT, `studentid` int(255) DEFAULT NULL, `name` varchar(255) DEFAULT NULL, `score` varchar(255) DEFAULT NULL, `statDate` date DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;-- ------------------------------ Records of student-- ----------------------------INSERT INTO `student` VALUES (’1’, ’1000’, ’路人甲’, ’99.9’, ’2016-09-01’);INSERT INTO `student` VALUES (’2’, ’1001’, ’路人丙’, ’98.8’, ’2016-09-02’);INSERT INTO `student` VALUES (’3’, ’1003’, ’路人丁’, ’95.5’, ’2016-09-03’);INSERT INTO `student` VALUES (’4’, ’1000’, ’路人甲’, ’90.0’, ’2016-09-02’);INSERT INTO `student` VALUES (’5’, ’1001’, ’路人丙’, ’87.5’, ’2016-09-01’);INSERT INTO `student` VALUES (’6’, ’1003’, ’路人丁’, ’77.5’, ’2016-09-01’);INSERT INTO `student` VALUES (’7’, ’1003’, ’路人丁’, ’60.5’, ’2016-09-02’);INSERT INTO `student` VALUES (’8’, ’1000’, ’路人甲’, ’80.5’, ’2016-09-03’);INSERT INTO `student` VALUES (’9’, ’1001’, ’路人丙’, ’60.8’, ’2016-09-04’);INSERT INTO `student` VALUES (’10’, ’1003’, ’路人丁’, ’50.5’, ’2016-09-04’);

数据如下:Mysql如何按照日期对比数据,求SQL语句

怎么样才能用SQL语句完成(日期会每天递增,数据会每天添加)Mysql如何按照日期对比数据,求SQL语句

问题解答

回答1:

你的需求要自连接才能实现,效率不高。

看看这个sql能不能满足你的需求吧。

SELECT `studentid`, `name`, group_concat(`score` ORDER BY `statDate`) FROM `student`GROUP BY `studentid`

以上手敲没验证,不知道有没有错,调试一下吧。

相关文章: