Утро,
В настоящее время у меня есть оператор SELECT, вычисляющий PCT для спортивного стола:
SELECT team
, COUNT(*) as played
, SUM(win) as wins
, SUM(loss) as lost
, SUM(draw) as draws
, SUM(SelfScore) as ptsfor
, SUM(OpponentScore) as ptsagainst
, SUM((win*2 + draw)- loss) as score
, CAST(SUM(win + (draw/2))/SUM(win + loss + draw) as decimal(4,3)) as pctWon
Если команда выиграла все свои игры, она отображается как 1.000, что является правильным.
Я хотел бы удалить ведущий 0, если результат не 1.000. Таким образом, для 50% побед он будет отображаться как .500, а не как 0.500, который он отображает в настоящее время.
Я не уверен, будет ли это проще всего сделать на PHP или MySQL.
Спасибо
Это должно работать:
SELECT team
, COUNT(*) as played
, REPLACE(SUM(win), '0.', '.') as wins
, SUM(loss) as lost
, SUM(draw) as draws
, SUM(SelfScore) as ptsfor
, SUM(OpponentScore) as ptsagainst
, SUM((win*2 + draw)- loss) as score
, CAST(SUM(win + (draw/2))/SUM(win + loss + draw) as decimal(4,3)) as pctWon
Других решений пока нет …