系统中需要查询到昨天数据的最大值和最小值,记录一下
查询当天数据最大值:
SELECT `c`.`gid` AS `gid`, `c`.`createTime` AS `createTime`, `c`.`creator` AS `creator`, `c`.`description` AS `description`, `c`.`editTime` AS `editTime`, `c`.`editor` AS `editor`, `c`.`isActive` AS `isActive`, `c`.`isDelete` AS `isDelete`, `c`.`current` AS `current`, `c`.`deviceId` AS `deviceId` FROM `current_record` `c` WHERE ( `c`.`gid` = ( SELECT max( `b`.`current` ) FROM `current_record` `b` WHERE (( to_days( `b`.`createTime` ) - to_days( now())) = 0 )))
查询当天数据最小值:
SELECT `c`.`gid` AS `gid`, `c`.`createTime` AS `createTime`, `c`.`creator` AS `creator`, `c`.`description` AS `description`, `c`.`editTime` AS `editTime`, `c`.`editor` AS `editor`, `c`.`isActive` AS `isActive`, `c`.`isDelete` AS `isDelete`, `c`.`current` AS `current`, `c`.`deviceId` AS `deviceId` FROM `current_record` `c` WHERE ( `c`.`gid` = ( SELECT min( `b`.`current` ) FROM `current_record` `b` WHERE (( to_days( `b`.`createTime` ) - to_days( now())) = 0 )))
注意:当表里有多个最大值和最小值时,Max()和Min()函数查询结果为空,会导致项目空指针;
解决办法:查询前一天时间最新的最大值数据就可以避免查询结果为空