I need any help please!

I’m a student in master in Business Intelligence & Analytics at a french university.
My prof wants us to work with data development in MongoDB to request it some good answers!
he gave me this :

Noplayer NamePlayer Sexe
10 Roddick Masculin
20 Ginepri Masculin
30 Gasquet Masculin
40 Monfils Masculin
100 Mauresmo Féminin
200 Davenport Féminin

Data 2 - STATE

CodeState NameState Monney
AUS Australie AUD
FRA France EU
USA Etats-Unis USD

Data 3- Teams

NoTeams
1
2

Data 4 - Tournoi

NoTournoi NameTournoi DateT Coef Endowment
1 Roland Garros 06/10/2000 10,700,000
11 Australian Open 15/10/2000 5,700,000
111 Flushing Meadows 10/11/2000 6,100,000
1111 Paris-Bercy Open 10/12/2000 4,300,000
  1. Some information is missing in the tables. Complete them, knowing that:
    — Roddick, Ginepri and Davenport are Americans;
    — Gasquet, Monfils and Mauresmo are French;
    — Roddick and Monfils are doubles partners;
    — Ginepri and Gasquet are doubles partners; — Mauresmo and Davenport only play singles;
    — Roland Garros results:
    — Roddick scores 7 points,
    — Ginepri scores 8 points,
    — Mauresmo scores 2 points,
    — Davenport scores 4 points,
    — Roddick and Monfils score 9 points, — Ginepri and Gasquet score 7 points;
    — Australian Open results:
    — Roddick scores 8 points,
    — Gasquet scores 1 point,
    — Monfils scores 3 points
    — Flushing Meadows results:
    — Roddick scores 0 points,
    — Roddick and Monfils score 7 points, — Ginepri and Gasquet score 8 points;
    — Results of the Bercy Paris Open:
    — Roddick scores 0 points.

Queries
Express the following queries in mongo query:
Simple queries with find()

  1. Player list, only show name and country.
  2. Name of players.
  3. List of tournaments taking place in France or whose prize money is greater than 800,000.
  4. Name of French players who play in a doubles team.
  5. For each tournament, its name, the name of the country where it takes place (not the country code), its endowment and the currency in which it is expressed.
  6. The name of the tournament that has the minimum prize pool.
  7. The name of the tournament that has the maximum prize pool.
    Complex queries with aggregate()
  8. Display the list of players sorted alphabetically by name.
  9. Display the average scores of each singles player (indicate the names of the players). Sort the average in descending order.
  10. View the final score of each doubles team and rank the teams from best to worst.
  11. Display, for each player, his player number, his name, his country and his total score in
    simple.
  12. Display the name of the player who played all singles tournaments.
    Specifications
    Each player has a name, a gender and represents a country. Two players can form a team (doubles, mixed or not). A tournament is identified by its name and takes place in a given country on a scheduled date. The prize money for the winners varies according to the tournaments and is expressed in the currency of the host country. In order to later display the endowments using the correct “unit”, we also want to store the name of the currency of each country. At the end of a tournament, a player or a team participating in this tournament obtains a score that represents the number of rounds passed in the tournament (1st round is worth 1 point, 2nd round is worth 2 points, etc.). Each tournament is assigned a coefficient according to its importance. The final score of a player (or a team) is obtained as follows: SOME SCORE * COEF
    for the n of the year. Players (or teams) are listed in descending order
    of their final score.

I made a lot of tests to write good collections. BUT I CAN’T UNDERSTAND WHERE I GOT A MISTAKE;
I have five collections to get good answers to my request

I did this ( in french):

'switched to db TD2'
db.creatuse TD2
eCollection('Joueurs')
{ ok: 1 }
db.Joueurs.insertMany([{_id:"10", NomJoueur:"Roddick", Sexe:"Masculin", Pays:{CodePays:"USA", NomPays:"Etats-Unis", Monnaie:"USD"}, Equipe:{NoEquipe:"1"}}])
{
  acknowledged: true,
  insertedIds: {
    '0': '10'
  }
}
db.Joueurs.insertMany([{_id:"20", NomJoueur:"Ginepri", Sexe:"Masculin", Pays:{CodePays:"USA",NomPays:"Etats-Unis", Monnaie:"USD"}, Equipe:{NoEquipe: "2"}}])
{
  acknowledged: true,
  insertedIds: {
    '0': '20'
  }
}
db.Joueurs.insertMany([{_id:"30", NomJoueur:"Gasquet", Sexe:"Masculin", Pays:{CodePays:"FRA", NomPays:"France", Monnaie:"EU"}, Equipe:{NoEquipe: "2"}}])
{
  acknowledged: true,
  insertedIds: {
    '0': '30'
  }
}
db.Joueurs.insertMany([{_id:"40", NomJoueur:"Monfils", Sexe:"Masculin", Pays:{CodePays:"FRA", NomPays:"France", Monnaie:"EU"}, Equipe:{NoEquipe: "1"}}])
{
  acknowledged: true,
  insertedIds: {
    '0': '40'
  }
}
db.Joueurs.insertMany([{_id:"100", NomJoueur:"Mauresmo", Sexe:"Feminin", Pays:{CodePays:"FRA", NomPays:"France", Monnaie:"EU"}}])
{
  acknowledged: true,
  insertedIds: {
    '0': '100'
  }
}
db.Joueurs.insertMany([{_id:"200", NomJoueur:"Davenport", Sexe:"Feminin", Pays:{CodePays:"USA", NomPays:"France", Monnaie:"USD"}}])
{
  acknowledged: true,
  insertedIds: {
    '0': '200'
  }
}
db.Joueurs.find({},{'NomJoueur':1,'NomPays':1,'NoEquipe':1})
{
  _id: '10',
  NomJoueur: 'Roddick'
}
{
  _id: '20',
  NomJoueur: 'Ginepri'
}
{
  _id: '30',
  NomJoueur: 'Gasquet'
}
{
  _id: '40',
  NomJoueur: 'Monfils'
}
{
  _id: '100',
  NomJoueur: 'Mauresmo'
}
{
  _id: '200',
  NomJoueur: 'Davenport'
}
db.Joueurs.find({},{'NomJoueur':1,'NomPays':1,'NoEquipe':0})
MongoServerError: Cannot do exclusion on field NoEquipe in inclusion projection
db.Joueurs.find({},{'NomJoueur':1,'NomPays':1,'NoEquipe':'1'})
{
  _id: '10',
  NomJoueur: 'Roddick',
  NoEquipe: '1'
}
{
  _id: '20',
  NomJoueur: 'Ginepri',
  NoEquipe: '1'
}
{
  _id: '30',
  NomJoueur: 'Gasquet',
  NoEquipe: '1'
}
{
  _id: '40',
  NomJoueur: 'Monfils',
  NoEquipe: '1'
}
{
  _id: '100',
  NomJoueur: 'Mauresmo',
  NoEquipe: '1'
}
{
  _id: '200',
  NomJoueur: 'Davenport',
  NoEquipe: '1'
}

Anybody can help please or give some good advice!