We built a CLI where we can choose the command to run from the numbered menu.
- Selection
- Get complete list of clubs → will list all the clubs and the number of player in them.
- Get complete list of players of a club → List out all the player belonging to a particular club.
- Projection
- Players with Age greater than x - Takes x as an input and list all the players whose age is greater than x.
- Get a complete list of players sorted by their age - Print the list of players sorted by their age.
- Get a complete list of players who are wicket keepers and have stumpings greater than x → This option list all wicket keepers which have no of stumpings greater than x.
- Aggregate
- Get a complete list of players who are wicket keepers and have stumpings greater than x
- Retrieve batsmen with runs in odi greater than avg runs in odi
- Search
- Partially search name players - Takes string as input and list all players whose name / part of name matches with that string and their info.
- Search for the name of a coach - Takes string as input (coach's name) and prints the details of coach such as coach Id and club id.
- Search for the name of a club- Takes string as input(club's name) and prints the club name, club ID, number of players in the club.
- Search for the name of a team- Takes string as input(team's name) and prints the team id, team name, club id, manager of the team and the number of players in the team.
- Analysis
- Bowler Analysis - This prints the economies of different bowlers sorted on the basis of matches played (descending) along with the bowler's stats and personal information. It also displays the names of the coaches of the Bowlers.
- Batsman Analysis - Prints 3 tables analyzing the performance of batsmen sorting them based on the number of runs scored in each format and also prints the batsman type which helps us understand which type of batsman is best for a format.
- Insertion / Creation
- Add a new Player - Takes info about the player (id , name , phono number , type , coach etc) and add it to the database.
- Add a new club - Add new club to database
- Add a new manager- Takes manager info and add it to database
- Add a new coach - Takes coach info as input and add it to database.
- Delete
- Delete player - Takes player id as input and remove all data of that player from database.
- Delete manager - Takes manager id as input and remove all data of that manager from database.
- Delete coach - Takes coach id as input and remove all data of that coach from database
- Update
- Change stats of a player - Takes player id type of player as input and new stats of the player and changes accordingly in the database.
- Update phone number - Takes player id/ manager id / coach id and old phone number and update it to new phone number.