public StatistikZusammenfassung<Spieler> getStatistikZusammenfassung(String spielerName) {
		Spieler spieler = eloPersistence
				.createQuery("select distinct s from Spieler s join fetch s.punktzahlHistorie where s.name = :spielerName", Spieler.class)
				.setParameter("spielerName", spielerName).getSingleResult();

		int toreGeschossen = 0;
		int toreGefangen = 0;
		int eloMinimum = Integer.MAX_VALUE;
		int eloMaximum = Integer.MIN_VALUE;

		for (EloPunktzahl punktzahl : spieler.getPunktzahlHistorie()) {
			if (punktzahl.getPunktzahl() < eloMinimum) {
				eloMinimum = punktzahl.getPunktzahl();
			}
			if (punktzahl.getPunktzahl() > eloMaximum) {
				eloMaximum = punktzahl.getPunktzahl();
			}
		}

		List<GespieltesSpiel> spiele = getSpiele(spielerName, Integer.MAX_VALUE);

		for (GespieltesSpiel spiel : spiele) {
			boolean gewonnen = spiel.isGewonnen();
			if (gewonnen) {
				toreGeschossen += spiel.getToreGewinner();
				toreGefangen += spiel.getToreVerlierer();
			} else {
				toreGefangen += spiel.getToreGewinner();
				toreGeschossen += spiel.getToreVerlierer();
			}
		}

		StatistikZusammenfassung<Spieler> result = new StatistikZusammenfassung<Spieler>(spieler, spieler.getAnzahlSpiele(),
				spieler.getAnzahlSiege(), toreGeschossen, toreGefangen, eloMinimum, eloMaximum);
		return result;
	}