| | |
| | | ) as aa order by aa.num desc |
| | | </select> |
| | | |
| | | |
| | | |
| | | <select id="getMatchRecord" resultType="com.dsh.communityWorldCup.model.MatchRecordList"> |
| | | select |
| | | b.`name`, |
| | | a.ourScore, |
| | | a.opponentScore, |
| | | DATE_FORMAT(a.startTime, '%Y-%m-%d %H:%i') as startTime, |
| | | a.matchResult, |
| | | (a.participationIntegral + a.winIntegral) as award |
| | | from t_world_cup_competitor a |
| | | left join t_world_cup b on (a.worldCupId = b.id) |
| | | where a.participantId = #{item.id} and a.participantType = #{item.isStudent} |
| | | order by a.startTime desc limit #{item.pageNo}, #{item.pageSize} |
| | | </select> |
| | | |
| | | |
| | | |
| | | |
| | | <select id="getWorldCupRank" resultType="java.util.Map"> |
| | | select * from ( |
| | | select |
| | | a.participantType, |
| | | a.participantId, |
| | | a.appUserId, |
| | | a.num as totalSession, |
| | | (ifnull(b.num, 0) / a.num * 100) as winRate |
| | | from ( |
| | | select |
| | | participantType, |
| | | participantId, |
| | | appUserId, |
| | | count(*) as num |
| | | from t_world_cup_competitor |
| | | where 1 = 1 |
| | | <if test="null != item.year"> |
| | | and DATE_FORMAT(a.startTime, '%Y') = #{item.year} |
| | | </if> |
| | | <if test="null != appUserIds and appUserIds.size() > 0"> |
| | | and appUserId in |
| | | <foreach collection="appUserIds" item="iten" index="index" open="(" separator="," close=")"> |
| | | #{iten} |
| | | </foreach> |
| | | </if> |
| | | group by participantType, participantId, appUserId |
| | | ) as a |
| | | left join ( |
| | | select |
| | | participantType, |
| | | participantId, |
| | | appUserId, |
| | | count(*) as num |
| | | from t_world_cup_competitor |
| | | where matchResult = 1 |
| | | <if test="null != item.year"> |
| | | and DATE_FORMAT(a.startTime, '%Y') = #{item.year} |
| | | </if> |
| | | <if test="null != appUserIds and appUserIds.size() > 0"> |
| | | and appUserId in |
| | | <foreach collection="appUserIds" item="iten" index="index" open="(" separator="," close=")"> |
| | | #{iten} |
| | | </foreach> |
| | | </if> |
| | | group by participantType, participantId, appUserId |
| | | ) as b on (a.participantId = b.participantId and a.participantType = b.participantType) |
| | | ) as aa |
| | | <if test="null != item.sort and item.sort == 1"> |
| | | order by aa.totalSession desc |
| | | </if> |
| | | <if test="null != item.sort and item.sort == 2"> |
| | | order by aa.winRate desc |
| | | </if> |
| | | </select> |
| | | |
| | | </mapper> |