You can just say
select sysdate, count((init_dtime)) / sum((Create_Dtime)) * 100 as percentage from Player p where Trunc(Init_Dtime) > Trunc(Sysdate) - 7 and Trunc(Create_Dtime) >= To_Date('2012-mar-01','yyyy-mon-dd') and trunc(create_dtime) < to_date('2015-sep-9','yyyy-mon-dd') order by percentage asc
group by in SQL files is not required because you are not really grouping something. group by is useful when you need a player percentage. Then you say group by player_id , and select will have player_id :
select player_id, count(…) from … where … group by player_id
EDIT: If the where clauses are different:
select sysdate, ( (select count((init_dtime)) from player p where trunc(Init_Dtime) > trunc(Sysdate) - 7 and Trunc(Create_Dtime) >= To_Date('2012-mar-01','yyyy-mon-dd') and trunc(create_dtime) < to_date('2015-sep-9','yyyy-mon-dd')) / (select count((Create_Dtime)) from player P where trunc(Create_Dtime) >= To_Date('2012-mar-01','yyyy-mon-dd') and trunc(Create_Dtime) < To_Date('2015-sep-9','yyyy-mon-dd')) ) * 100 as percentage from dual
Nivas source share