Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SELECT
- `a`.*,
- `b`.`today_play`
- FROM (SELECT
- `a`.`user_id`,
- `a`.`score`,
- `a`.`W`,
- `a`.`W2`,
- `a`.`T`,
- `a`.`L`,
- `a`.`nickname`,
- `a`.`nickname_show`,
- GROUP_CONCAT('result:', `result`, '|match_datetime:', `match_datetime`, '|team_name:', `team_name`, '|play:', `play`, '|hopefull:', `hopefull`, '|rate:', `rate` ORDER BY match_datetime ASC) AS `result`
- FROM (SELECT
- `a`.*,
- `b`.`nickname`,
- `b`.`nickname_show`,
- `plays`.`play`,
- if(`plays`.`score` = 0, 'L', if(`plays`.`score` = 1, 'T', 'W')) AS `result`,
- `balls`.`match_datetime`,
- if(`plays`.`play` = 'home_team', `balls`.`home_team`, `balls`.`away_team`) AS `team_name`,
- `balls`.`hopefull`,
- `balls`.`rate`
- FROM (SELECT
- `user_id`,
- SUM(`W`) AS `W`,
- SUM(`w2`) AS `W2`,
- SUM(`T`) AS `T`,
- SUM(`L`) AS `L`,
- SUM((`score` * `W`) + (`score` * `W2`) + (`score` * `T`) + (`score` * `L`)) AS `score`
- FROM (SELECT
- `user_id`,
- SUM(`score`) AS `score`,
- if(`result` = 'L', `count_result`, 0) AS `L`,
- if(`result` = 'T', `count_result`, 0) AS `T`,
- if(`result` = 'W2', `count_result`, 0) AS `W2`,
- if(`result` = 'W', `count_result`, 0) AS `W`
- FROM (SELECT
- `user_id`,
- `score`,
- if(`score` = 0, 'L', if(`score` = 1, 'T', if(`score` = 2, 'W2', 'W'))) AS `result`,
- COUNT(`user_id`) AS `count_result`
- FROM `plays`
- WHERE `match_date` >= '2019-10-01' AND `match_date` <= '2019-10-31'
- AND `status` = 1
- GROUP BY `user_id`, `score`
- ORDER BY `user_id`) AS `a`
- GROUP BY `user_id`, `score`) AS `a`
- GROUP BY `user_id`) AS `a`
- INNER JOIN `users` AS `b` ON `a`.`user_id` = `b`.`id` AND `b`.`league` = 'outrank'
- INNER JOIN `plays`
- ON `a`.`user_id` = `plays`.`user_id`
- AND `plays`.`match_date` >= '2019-10-01' AND `match_date` <= '2019-10-31'
- AND `status` = 1
- INNER JOIN `balls`
- ON `plays`.`ball_id` = `balls`.`id`) AS `a`
- GROUP BY `user_id`
- ORDER BY `score` DESC, SUM(`W` + `W2` + `T` + `L`) ASC, `L` ASC, `W` DESC, `W2` DESC) AS `a`
- LEFT JOIN (SELECT `user_id`, if(`plays`.`play` = 'home_team', `balls`.`home_team`, `balls`.`away_team`) AS `today_play`
- FROM (SELECT *
- FROM `plays`
- WHERE `id` IN (SELECT MAX(`id`) AS `id`
- FROM `plays`
- WHERE `status` = 0
- GROUP BY `user_id`)) AS `plays`
- INNER JOIN `balls`
- ON `plays`.`ball_id` = `balls`.`id`
- WHERE `status` = 0) AS `b`
- ON `a`.`user_id` = `b`.`user_id`
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement