44 lines
1.7 KiB
MySQL
44 lines
1.7 KiB
MySQL
|
|
DROP TABLE IF EXISTS `app_log`;
|
||
|
|
CREATE TABLE `app_log` (
|
||
|
|
`id` varchar(64) NOT NULL,
|
||
|
|
`appcode` varchar(10) DEFAULT NULL COMMENT 'app编码',
|
||
|
|
`appversion` varchar(10) DEFAULT NULL COMMENT 'app版本',
|
||
|
|
`device` varchar(10) DEFAULT NULL COMMENT '设备类型',
|
||
|
|
`sysversion` varchar(10) DEFAULT NULL COMMENT '系统版本',
|
||
|
|
`service` varchar(32) DEFAULT NULL COMMENT '服务',
|
||
|
|
`action` varchar(32) DEFAULT NULL COMMENT '操作',
|
||
|
|
`method` varchar(10) DEFAULT NULL COMMENT '请求方式',
|
||
|
|
`status` varchar(10) DEFAULT NULL COMMENT '请求状态',
|
||
|
|
`reqheader` text COMMENT '请求头',
|
||
|
|
`reqbody` text COMMENT '请求业务数据',
|
||
|
|
`exception` longtext COMMENT '异常',
|
||
|
|
`create_date` datetime DEFAULT NULL COMMENT '请求时间',
|
||
|
|
PRIMARY KEY (`id`)
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||
|
|
|
||
|
|
|
||
|
|
SELECT a.raceId , a.raceName , a.startTime , a.endTime ,
|
||
|
|
case when c.joinTotal is null then 0 else c.joinTotal end as joinTotal ,
|
||
|
|
case when b.uid is null then 0 else b.uid end as uid ,
|
||
|
|
case when b.score is null then 0 else b.score end as score ,
|
||
|
|
case when d.truename is null then '' else d.truename end as truename
|
||
|
|
FROM (
|
||
|
|
select raceId ,raceName , startTime , endTime
|
||
|
|
from Race
|
||
|
|
where (status = 0 or current_timestamp > endTime)
|
||
|
|
order by raceId desc limit :limit offset :offset
|
||
|
|
) a
|
||
|
|
left join (
|
||
|
|
SELECT DISTINCT ON (raceId) uid, raceId, score
|
||
|
|
FROM raceScore
|
||
|
|
ORDER BY raceId , score DESC
|
||
|
|
) b on a.raceId = b.raceId
|
||
|
|
left join (
|
||
|
|
SELECT raceId , count(*) as joinTotal
|
||
|
|
FROM raceScore GROUP BY raceId
|
||
|
|
) c ON a.raceId = c.raceId
|
||
|
|
LEFT JOIN V_baseuser d on b.uid = d.studentId
|
||
|
|
order by a.endTime desc
|
||
|
|
|
||
|
|
@Cache(prefix=_3ECacheContants.CACHE_PREFIX_QWHSYB,key="#page.limit,#page.offset",duration=60*60*4)
|