• MySQL三个列组成唯一值查询_开源中国问题练习_20161026


    问题地址:https://www.oschina.net/question/2923955_2202674

    问题地址

    按 service_collect_day分类以后,按 app_id,node_id,service_id 三个都相同分类,然后取这些里面的 last_request_count 最大值的那一行。

    结果也就是这样的

    结果

    附:表结构及数据

    CREATE TABLE `temp` (
      `APP_COLLECT_ID` int(11) NOT NULL AUTO_INCREMENT,
      `SERVICE_COLLECT_DAY` datetime DEFAULT NULL,
      `SERVICE_ID` int(11) NOT NULL,
      `NODE_ID` int(11) DEFAULT NULL,
      `APP_ID` int(11) DEFAULT NULL,
      `LAST_REQUEST_TIME` datetime DEFAULT NULL,
      `LAST_REQUEST_COUNT` int(11) DEFAULT '0',
      `LAST_REQUEST_RESPONSE` int(11) DEFAULT '0',
      `LAST_REQUEST_RESPONSE_MAX` int(11) DEFAULT '0',
      `LAST_REQUEST_RESPONSE_MIN` int(11) DEFAULT '0',
      `LAST_REQUEST_ERROR` int(11) DEFAULT '0',
      `STATUS` char(1) COLLATE utf8_unicode_ci DEFAULT NULL,
      `CREATION_DATE` datetime DEFAULT NULL,
      `CREATED_BY` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL,
      `LAST_UPDATE_DATE` datetime(6) DEFAULT NULL,
      `LAST_UPDATED_BY` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL,
      `SIDE` char(1) COLLATE utf8_unicode_ci DEFAULT NULL,
      PRIMARY KEY (`APP_COLLECT_ID`)
    );

    INSERT INTO `temp` VALUES ('1', '2016-09-23 00:00:00', '518', '11782', '9', '2016-09-23 08:00:00', '2', '0', '0', '0', '1', 'T', '2016-09-23 17:04:15', null, '2016-09-23 17:06:50.000000', null, 'C');
    INSERT INTO `temp` VALUES ('2', '2016-09-23 00:00:00', '518', '11782', '9', '2016-09-23 08:00:00', '222', '0', '0', '0', '1', 'T', '2016-09-23 17:04:15', null, '2016-09-23 17:06:50.000000', null, 'C');
    INSERT INTO `temp` VALUES ('3', '2016-09-23 00:00:00', '518', '11782', '9', '2016-09-23 08:00:00', '2222', '0', '0', '0', '1', 'T', '2016-09-23 17:04:15', null, '2016-09-23 17:06:50.000000', null, 'C');
    INSERT INTO `temp` VALUES ('4', '2016-09-23 00:00:00', '518', '11782', '9', '2016-09-23 08:00:00', null, '0', '0', '0', '1', 'T', '2016-09-23 17:04:15', null, '2016-09-23 17:06:50.000000', null, 'C');
    INSERT INTO `temp` VALUES ('5', '2016-09-24 00:00:00', '519', '11782', '9', '2016-09-23 08:00:00', '1', '0', '0', '0', '1', 'T', '2016-09-23 17:04:15', null, '2016-09-23 17:06:50.000000', null, 'C');
    INSERT INTO `temp` VALUES ('6', '2016-09-24 00:00:00', '519', '11782', '9', '2016-09-23 08:00:00', '2', '0', '0', '0', '1', 'T', '2016-09-23 17:04:15', null, '2016-09-23 17:06:50.000000', null, 'C');
    INSERT INTO `temp` VALUES ('7', '2016-09-24 00:00:00', '519', '11782', '9', '2016-09-23 08:00:00', '3', '0', '0', '0', '1', 'T', '2016-09-23 17:04:15', null, '2016-09-23 17:06:50.000000', null, 'C');
    INSERT INTO `temp` VALUES ('8', '2016-09-23 00:00:00', '517', '11782', '9', null, '212', '0', '0', '0', '0', null, null, null, null, null, null);

    #SQL如下

    SELECT b.`APP_COLLECT_ID`,b.SERVICE_COLLECT_DAY,b.SERVICE_ID,NODE_ID,b.`APP_ID`,b.`LAST_REQUEST_TIME`,b.`LAST_REQUEST_COUNT`
    FROM (
        SELECT a.`APP_COLLECT_ID`,a.`SERVICE_COLLECT_DAY`,a.`SERVICE_ID`,a.`NODE_ID`,a.`APP_ID`,`LAST_REQUEST_TIME`,a.`LAST_REQUEST_COUNT`
        FROM `temp` AS a
        GROUP BY a.`SERVICE_COLLECT_DAY`,a.`SERVICE_ID`,a.`NODE_ID`,a.`APP_ID`,a.`LAST_REQUEST_COUNT`
        ORDER BY a.`SERVICE_COLLECT_DAY`,a.`LAST_REQUEST_COUNT`DESC
    ) AS b 
    GROUP BY  b.SERVICE_COLLECT_DAY,`LAST_REQUEST_TIME`
    ORDER BY b.SERVICE_COLLECT_DAY,b.`LAST_REQUEST_COUNT`DESC

  • 相关阅读:
    重装win7之后,wubi安装的ubuntu的启动菜单不见
    data_source.rb:182: TZInfo::DataSourceNotFound解决办法
    Gem::InstallerError:The 'json' native gem requires installed build tools
    去掉DL is deprecated, please use Fiddle警告信息
    ruby on rails安装(ubuntu 14.04)
    ruby on rails 安装(win8 64位)
    满城月季花开
    python中的zip()函数
    python学习之“序列”的理解
    二进制、十进制、八进制、十六进制的理解
  • 原文地址:https://www.cnblogs.com/Mr-Cxy/p/6001888.html
Copyright © 2020-2023  润新知