Announcement

Collapse
No announcement yet.

subselect?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • subselect?

    Hallo alle,

    ich suche seit Tagen nach einer Möglichkeit, einzelne Datensätze zu selectieren. Gegeben ist Tabelle

    <PRE>
    NUTZER NR WERT
    A 1 3
    A 2 5
    A 3 4 <-
    B 1 3
    B 2 5
    B 3 4
    B 4 1 <-
    C 1 2
    C 2 1 <-
    </PRE>

    Nun möchte ich als Select-Ergebnis die kompletten Zeilen mit der höchsten Nr für jeden Nutzer (oben mit Pfeil), also:

    <PRE>
    NUTZER NR WERT
    A 3 4
    B 4 1
    C 2 1
    </PRE>

    Folgende Anweisung:
    <PRE>
    select NUTZER, max(NR) as MAXNR from T_NUTZERZEITEN
    group by NUTZER
    </PRE>

    liefert ja nur
    <PRE>
    NUTZER MAXNR
    A 3
    B 4
    C 2
    </PRE>

    Wie komme ich an o.g. Ergebnis? Ich habe etwa probiert:

    <PRE>
    select * from T_NUTZERZEITEN Z
    where exists
    (select NUTZER, max(NR) as MAXNR from T_NUTZERZEITEN Y
    where ((Z.NUTZER = Y.NUTZER) and (Z.NR = Y.MAXNR))
    group by NUTZER
    )
    </PRE>

    Leider bis jetzt alles erfolglos...

    Danke für jede Hilfe.
    Stahli

  • #2
    Hallo André,

    wenn ich dich richtig verstehe möchtest Du nur die Zeilen pro Nutzer, bei denen Nr den höchsten Wert hat. Dann sollte eigentlich folgendes funktionieren (ist aber ungetestet):
    <PRE>
    SELECT
    NUTZER,
    NR,
    WERT
    FROM T_NUTZERZEITEN
    WHERE (NR = (SELECT MAX(NR) FROM T_NUTZERZEITEN))
    </PRE>
    Grüße Joche

    Comment


    • #3
      Hallo,

      da fehlt noch etwas:
      <pre>
      select z.nutzer, z.nr, z.wert
      from t_nutzerzeiten z
      where
      z.nr = (select max(nr) from t_nutzerzeiten where nutzer = z.nutzer)
      </pre&gt

      Comment


      • #4
        @Bruno: hast natürlich recht..

        Comment


        • #5
          (Warum einfach wenn´s auch umständlich geht?)

          Hallo Ihr zwei Helfer,

          vielen Dank, genau das meinte ich :-))

          Gruß Andr&#233

          Comment

          Working...
          X