Так что у меня есть MySQL заявление так:Добавление столбцов, созданных в mysql?
SELECT username, @n := @n + 1 ranking, `1st places`, `2nd places`, `3rd places`, `top5`, `top3
FROM
(
SELECT username,
SUM(CASE WHEN rating = 1 THEN 1 ELSE 0 END) `1st places`,
SUM(CASE WHEN rating = 2 THEN 1 ELSE 0 END) `2nd places`,
SUM(CASE WHEN rating = 3 THEN 1 ELSE 0 END) `3rd places`,
SUM(CASE WHEN rating < 6 THEN 5 ELSE 0 END) `top5`,
SUM(CASE WHEN rating < 4 THEN 5 ELSE 0 END) `top3`
FROM Table1
GROUP BY username
ORDER BY `1st places` DESC
) q, (SELECT @n := 0) n
Как я могу сложить столбцы, которые я создал называемые, + «2 места» «1-го Места в» + «3-е места» в этом SQL заявление и создать еще один столбец, называемый «итоговой отделкой»? Кажется легким, но я не могу понять это.
Я не совсем понимаю это. 'Рейтинг <4' перекрывается с' rating = 1', а также частично с 'rating <6'. Можете ли вы привести примерные данные с ожидаемым результатом, чтобы посмотреть, что вы хотите сделать? –
, так что я хочу, это точечная система. Пример: скажите, что кто-то помещает 1-й ака «рейтинг = 1», тогда они получают очко за 1-е место, тогда они также получают 5 очков за то, что они попадают в пятерку лучших (ака рейтинг <6), а также получают еще 5 очков за то, что они были в top 3 (ака рейтинг <4), поэтому они получат в общей сложности 11 очков. –
Im понимая, как это глупо это на самом деле сейчас, когда я набрал все это, но я думаю, есть ли способ сделать это? Даже думать об этом, мне не нужно это. –