1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

Frage zum Gruppieren

Dieses Thema im Forum "Oracle" wurde erstellt von kowski, 21 November 2011.

  1. kowski

    kowski Neuer Benutzer

    moin, hab ne frage bezüglich einer Aufgabe bei der ich nicht weiter komme.
    Aufgabenstellung war folgende:
    Entscheidet in diesem Aufgabenbereich selbst, wie und wo die benötigten Unterabfragen im SQL-Statement
    notiert werden müssen. Dabei ist zu beachten, dass IN- und EXISTS-Operatoren in diesem
    Aufgabenbereich nicht erlaubt sind.
    4.1 Gebt alle Leistungen (nur die Letzten, wenn Leistungen mehrfach vorkommen)
    der Person 3748 aus.
    Die Ausgabe soll mindestens alle Spalten der Tabelle „Pruefung“ enthalten.
    Sortiert die Ausgabe nach der Studienleistungsnummer. Zeilen: 12

    Ich bekomme mit meiner Lösung 15 zeilen da er ein paar doppelt hat. Aber egal wo ich group by mach es kommne immer 15 raus und es werden ein paar doppelt angezeigt.

    SELECT * FROM pruefung p
    WHERE pin = 3748
    AND semester = (SELECT MAX(semester) FROM studienleistung s WHERE p.studienleistung_id = s.studienleistung_id )
    ORDER BY studienleistung_id;
     
  2. kowski

    kowski Neuer Benutzer

  3. db.wizard

    db.wizard Aktiver Benutzer

    Kannst du bitte die Struktur deiner Tabellen posten ? So ist die Beantwortung deiner Frage eher ein Blindflug

    Grüsse
     
  4. ukulele

    ukulele Datenbank-Guru

    Zeilen die er "doppelt hat" sind nur in der Ausgabe doppelt oder auch tatsächlich in der DB doppelt? Ich würde sagen du musst nach max(studienleistung_id) gruppieren, aber das kann ich ohne Tabellenstruktur und Beispieldaten auch nur raten.
     
  5. kowski

    kowski Neuer Benutzer

  6. ukulele

    ukulele Datenbank-Guru

    Das Ergebniss deiner Abfrage mit den 15 Beispieldatensätzen wäre auch gut, daran müsste man eigentlich sehen was "doppelt" ist und was einfach doppelt in der DB steht. Auch bin ich mir nicht sicher, ob dein ursprüngliches SELECT so funktioniert, deswegen stelle ich es mal um (ich machs mit MSSQL).
    Code:
    SELECT    p.STUDIENLEISTUNG_ID,
            p.PIN,
            p.Semester,
            p.MIT_PIN,
            p.TEILNAHME,
            p.NOTE,
            s.FACHRICHTUNG_ID,
            s.SL_NR,
            s.SL_Name
    FROM    PRUEFUNG p,
            STUDIENLEISTUNG s
    WHERE    p.PIN = 3748
    AND        p.STUDIENLEISTUNG_ID = s.STUDIENLEISTUNG_ID
    GROUP BY s.FACHRICHTUNG_ID,s.SL_NR,s.SL_Name
     
Die Seite wird geladen...
Ähnliche Themen
  1. Tscheche
    Antworten:
    2
    Aufrufe:
    166

Diese Seite empfehlen