+ Antworten
Ergebnis 1 bis 2 von 2

Thema: SQL: ordnen nach Anzahl des Vorkommens in Tabelle

  1. #1
    TP-Junior megamanX macht alles soweit korrekt Avatar von megamanX
    Registriert seit
    Jun 2002
    Beiträge
    9

    SQL: ordnen nach Anzahl des Vorkommens in Tabelle

    Hallo miteinander,

    ich spiele gerade ein wenig mit SQL herum. Ich habe komplette Datensätze von der Fußball-WM 2006. In folgender Abfrage werden mir alle Verteidiger ausgegeben, die in einem Spiel ein Tor geschossen habe und in diesem Spiel nicht verwarnt worden sind:
    Code:
    select distinct s.*
    from Spieler s, Tore t 
    where
    	s.Position = 'Defender' and
    	t.SpielerNr = s.SpielerNr and
    	not exists
    		(select * from Verwarnung v
    		where
    			v.SpielerNr = s.SpielerNr and
    			v.SpielID = t.Spiel)
    order by s.Land;
    Das funktioniert auch einwandfrei, die sind nach Mannschaften geordnet und durch das distinct kommt auch jeder nur einmal vor.

    Jetzt würde ich das alles aber gern nach der Anzahl der Tore ordnen, die die einzelnen Spieler erzielt haben. Leider habe ich absolut keine Ahnung, wie ich da vorgehen soll.

    Die Tore-Tabelle ist folgendermaßen aufgebaut:
    Code:
    create table Tore(
      SpielerNr int references Spieler,
      Spiel int references Spiel,
      Minute int,
      Spielsituation varchar(20),
      primary key(SpielerNr, Spiel, Minute));
    Hat jemand eine Idee?
    ReactOS (freier Windows-Klon)

  2. #2
    TP-Senior CharlyB ist auf einem guten Weg Avatar von CharlyB
    Registriert seit
    May 2002
    Ort
    DD
    Beiträge
    232
    Code:
    SELECT * FROM
    (
    	SELECT sub.*, SUM(Tor)
    	FROM (
    		select s.*, 1 as Tor
    		from Spieler s, Tore t 
    		where
    			s.Position = 'Defender' and
    			t.SpielerNr = s.SpielerNr and
    			not exists
    				(select * from Verwarnung v
    				where
    					v.SpielerNr = s.SpielerNr and
    					v.SpielID = t.Spiel)
    	) sub
    	GROUP BY SpielerNr
    ) main
    order by Tor,Land;
    Nur so 'ne Idee.

    Jan

    [edit] *erst denken, dann schreiben*
    Geändert von CharlyB (11.02.2007 um 21:46 Uhr)
    school-fellows.net << jetzt noch besser, da Testaccount

    Blog

+ Antworten

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51