У меня есть таблица, в которой перечислены результаты по видам спорта, датам начала и окончания и результату победы/поражения. Мне нужно рассчитать процент выигрышей за спорт за сезон_старт. Это мой стол:Как рассчитать проценты в tsql, используя группу по запросу?
table1
******
id sport won playerid season_start season_end updated_date
--- ----- ---- -------- ------------ ------------ ------------
1 rugby Y kato23 2016-01-01 2016-01-31 2016-02-01
2 rugby Y king54 2016-01-01 2016-01-31 2016-02-01
3 rugby N robby1 2016-03-01 2016-03-28 2016-04-01
4 rugby Y kelly2 2016-03-01 2016-03-28 2016-04-01
5 soccer Y kato23 2016-01-01 2016-01-31 2016-02-01
6 soccer Y jeri44 2016-01-01 2016-01-31 2016-02-01
7 soccer N matt24 2016-06-01 2016-06-30 2016-07-01
8 tennis Y kray43 2016-01-01 2016-01-31 2016-02-01
9 tennis Y jeri44 2016-01-01 2016-01-31 2016-02-01
10 tennis N jeri44 2016-01-01 2016-01-31 2016-02-01
Так что я хотел бы выполнить запрос, который производит следующий результат:
sport season_start success_percent
----- ------------ ---------------
rugby 2016-01-01 100.00
rugby 2016-03-01 50.00
soccer 2016-01-01 100.00
soccer 2016-06-01 0.00
tennis 2016-01-01 66.66
Я попытался:
select sport,won, season_start, count(sport) as sportcount
from table1 where won = 'Y'
group by sport, won, season_start
Но это просто дать мне полный счет, но не фактический процент успеха. Я пробовал использовать регистр case, но я не слишком хорош с tsql или с помощью «Sum», чтобы подсчитать выигрыши и потери, а затем вычислить процент выигрыша из общего числа.
Может ли кто-нибудь предоставить запрос tsql, который делает это?
, который не выглядит правильным - теперь он дает мне 100 или 0, что неверно –
Извинения, моя ошибка - я тоже сгруппировал выигранный, поэтому он был испорчен! Держитесь, позвольте мне проверить, скоро вас обновит. –
OK У меня проблема: мне нужно включить update_date как один из столбцов в результирующем наборе, но затем, когда я добавляю update_date в select и в группе, результат выключен - он также вставляет дополнительные строки , Как добавить столбец updated_date в результирующий набор, не запуская набор результатов? –